nasa / cea
git clone https://github.com/nasa/cea.git
v3.3.4 · 1mo ago
🔥 on GitHub Trending today
Computes chemical equilibrium compositions of mixtures by free-energy minimization, plus thermodynamic and transport properties of the products.
Why you might care
NASA's CEA re-implemented as a modern codebase with a Python package (import cea), C/Fortran APIs, and a database of over 2000 species with thermo curve fits. Suited to rocket performance, Chapman-Jouguet detonation, and shock-tube calculations; the core has no external dependencies.
+1
stars, 24h · #23,375
+~7
stars, 7 days · #17,172
+22
stars, 30 days · #22,035
217
★ total · +3% this week
41
forks · 14 open issues
Star history (as recorded here)
LanguageFortran
LicenseApache-2.0
Created2025-12-22 (10mo ago)
Last push27d ago
Watchers11
OwnerOrganization
Seen on GitHub Trending
- 2026-10-23 — #8 monthly in fortran · +21 ★
- 2026-10-22 — #8 monthly in fortran · +22 ★
GitHub topics
Links
- GitHub: github.com/nasa/cea
- Homepage: https://nasa.github.io/cea/
- Releases · Issues · Hacker News mentions
README excerpt
# CEA (Chemical Equilibrium with Applications) A modernized version of NASA's Chemical Equilibrium with Applications. Online documentation and examples are located at ## Overview The NASA software package CEA (Chemical Equilibrium with Applications) enables the rapid solution of chemical equilibrium problems for complex mixtures. The core solver computes equilibrium product concentrations given a set of reactants and thermodynamic states. These product concentrations are then used to compute the thermodynamic and transport properties of the equilibrium mixture. Applications include estimation of theoretical rocket performance, Chapman-Jouguet detonation characteristics, and shock-tube parameters for incident and reflected shocks. Associated with the program are independent databases with transport and thermodynamic properties of individual species. Over 2000 species are contained in the thermodynamic database. This software repository is a complete re-implementation of the original CEA software, with initial development supported by the NASA Engineering & Safety Center (NESC). The software represents the latest evolution of a series of computer programs that developed at the NASA Glenn (formerly Lewis) Research Center since the 1950s. The primary goals of the re-implementation were to modernize the CEA code base to adopt modern software engineering practices and improve CEA's ability to interface with other software packages and analysis environments via well-defined programming APIs in multiple languages. ## Install (Recommended) For most users, install the published Python package directly: python -m pip install cea This is the fastest path to start using the Python API (`import cea`) without building from source. The Python package requires Python 3.11 or newer. If you need the legacy CLI executable (`cea`) or C/Fortran build artifacts, use the source build path below. Prebuilt release assets are also available on the GitHub Releases page, including platform executables and shared libraries (`.so`, `.dll`, `.lib`, `.dll.a`). ## Build and Install from Source The CEA software package is compiled and installed using CMake v3.19+. The core software has no external dependencies, and is known to build successfully on a wide range of platforms and using the Intel and GNU Fortran compilers. The basic installation process is as follows: cd mkdir build && cd build cmake -DCMAKE_INSTALL_PREFIX= -DCEA_BUILD_TESTING=OFF .. cmake --build . cmake --install . This will build and install the `cea` executable, `libcea` library, default thermodynamic and transport property databases, documentation, and sample problems to the user-specified `cea_install_dir`. Upon installation, all that is required to use the `cea` applications is to add the CEA install directory to the user's `PATH` environment variable, e.g.: export PATH=" /bin:$PATH" Once properly configured, you should be able to run the provided sample problems from any working directory as follows:
Blurb generated by claude-haiku-5-5 today. Star deltas marked ~ are extrapolated from partial history.