ThermoOpt is a Python package for the modeling and optimization of thermodynamic cycles.
📚 Documentation: https://turbo-sim.github.io/thermopt/ (under construction)
📦 PyPI package: https://pypi.org/project/thermopt/
If you just want to use ThermoOpt, the easiest way is to install it from PyPI:
pip install thermoptYou can then verify the installation with:
python -c "import thermopt; thermopt.print_package_info()"This guide walks you through installation for development using Poetry, which manages both dependencies and virtual environments automatically.
-
Install Poetry package manager Follow the official guide: Poetry Installation
Then verify the installation:poetry --version
-
Clone the repository from GitHub
git clone https://github.com/turbo-sim/thermopt.git
-
Navigate to the project directory
cd thermopt -
Install the package using Poetry
poetry install
-
Verify the installation
poetry run python -c "import thermopt; thermopt.print_package_info()"If the installation was successful, you should see output similar to:
-------------------------------------------------------------------------------- ________ ____ __ /_ __/ /_ ___ _________ ___ / __ \____ / /_ / / / __ \/ _ \/ ___/ __ `__ \/ / / / __ \/ __/ / / / / / / __/ / / / / / / / /_/ / /_/ / /_ /_/ /_/ /_/\___/_/ /_/ /_/ /_/\____/ .___/\__/ /_/ -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- Version: 0.2.2 Repository: https://github.com/turbo-sim/thermopt Documentation: https://turbo-sim.github.io/thermopt/ --------------------------------------------------------------------------------
The examples directory contains a variety of ready-to-run thermodynamic cycle cases, covering different working fluids and applications.
Each example:
- Is defined in a
.yamlinput file - Is executed via a corresponding
run_optimization.pyscript - Outputs results in a subdirectory called
results/
To run any example, navigate to the corresponding subfolder and execute the optimization script.