About this project
Choupo is a free and open-source chemical process simulator written in C++17. It is designed as a "glass-box" system, meaning all equations and iterations are visible in the source code and terminal output to facilitate teaching and research.
The software is divided into four specialized binaries:
- choupoSolve: Steady-state simulation and root finding.
- choupoBatch: Time-dependent simulation and recipe-driven sequences.
- choupoCtrl: Dynamic continuous simulation with control loops (e.g., PID).
- choupoProps: Thermodynamic property evaluation and parameter fitting.
Key technical capabilities include:
- Thermodynamics: Support for NRTL, Wilson, UNIQUAC, and UNIFAC activity coefficients; SRK and Peng-Robinson cubic Equations of State; and Pitzer electrolyte models.
- Unit Operations: Includes flash (VL/LL/VLLE), distillation (Wang-Henke, MESH, FUG), reactors (CSTR, PFR, Gibbs, Batch), heat exchangers, rotating equipment, solids handling (cyclones, crystallisers, dryers), and spiral-wound NF/RO membranes.
- Solvers & Drivers: Built-in implementations of Newton-Raphson, Wegstein, RK4, Nelder-Mead, and Levenberg-Marquardt. It supports sequential-modular flowsheets with recycle and outer drivers for optimization and sensitivity sweeps.
- Interface: A web-based GUI built with React and Plotly, utilizing WebAssembly to run the C++ engine in the browser.
Choupo is designed for minimal dependencies, requiring only a C++17 compiler and GNU make for native builds.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.