.. raw:: html
.. role:: red
.. role:: green
.. role:: orange
.. role:: blue
ThermoSTEAM: BioSTEAM's Premier Thermodynamic Engine
====================================================
.. figure:: class_diagram_light.png
:class: only-light
:align: center
.. figure:: class_diagram_dark.png
:class: only-dark
:align: center
- :blue:`Properties:` ThermoSTEAM builds upon `chemicals `_ and `thermo `_, from the Chemical Engineering Design Library, for thermodynamic models and data which become encapsulated as callable property classes.
- :green:`Data:` Chemical objects manage the thermodynamic methods and makes sure to use a valid method at given temperatures and pressures whenever estimating properties.
- :red:`Interface:` A thermodynamic property package is first defined through a Thermo object, which defines the working chemicals, mixing rules, and equlibrium estimation methods. Then, Stream objects can be used to estimate thermodynamic equilibrium, mixture properties, and mass and energy balances.
- :orange:`Equilibrium:` Phase equilibrium calculations are handled by callable equilibrium objects. The main vapor-liquid equilibrium algorithm solves the modified Raoult’s law equation with activity coefficients estimated through interaction parameters for UNIQUAC Functional-group Activity Coefficients.
.. toctree::
:maxdepth: 2
:hidden:
Chemical
Chemicals
Thermo
Stream
MultiStream
ThermalCondition
ThermoData
functor
functional
equilibrium/index
reaction/index
indexer/index
mixture/index
separations
Related Projects
----------------
There are many third party open-source Python libraries that may provide additional resources for designing and modeling chemical processes:
* `thermo `_: Chemical properties component of Chemical Engineering Design Library.
* `chemicals `_: Chemical database component of Chemical Engineering Design Library.
* `fluids `_: Fluid dynamics component of Chemical Engineering Design Library (ChEDL)
* `chempy `_: A package useful for chemistry written in Python.
* `thermochem `_: Useful Python modules for Thermodynamics and Thermochemistry.
* `chemics `_: A Python package for chemical reactor engineering.
* `ase `_: The Atomic Simulation Environment.
* `pMuTT `_: The Python Multiscale Thermochemistry Toolbox.