Thermodynamical models

ChemistryLab.THERMO_MODELSConstant
THERMO_MODELS

Dictionary storing raw thermodynamic model expressions and units. Keys are model names (symbols), values are dictionaries containing:

  • Symbolic expressions for thermodynamic functions (Cp, H, S, G).
  • Units for parameters and variables.
source
ChemistryLab.THERMO_FACTORIESConstant
THERMO_FACTORIES

Dictionary storing compiled ThermoFactory objects for each model. Used to efficiently generate SymbolicFunc instances.

source
ChemistryLab.add_thermo_modelFunction
add_thermo_model(model_name, dict_model::AbstractDict)

Add a new thermodynamic model to the registry using a dictionary of expressions.

Arguments

  • model_name: unique symbol for the model.
  • dict_model: dictionary containing symbolic expressions and units.
source
add_thermo_model(model_name, Cpexpr::Expr, units=nothing)

Add a new thermodynamic model derived from a heat capacity (Cp) expression. Automatically integrates Cp to find H, S, and G.

Arguments

  • model_name: unique symbol for the model.
  • Cpexpr: symbolic expression for heat capacity as a function of T.
  • units: optional dictionary of units for parameters.
source
ChemistryLab.build_thermo_functionsFunction
build_thermo_functions(model_name, params) -> OrderedDict

Build thermodynamic function objects for a specific model and parameters. Dispatches on Val(model_name) — add a new method for each new model.

Arguments

  • model_name: symbol identifying the thermodynamic model (e.g., :cp_ft_equation).
  • params: dictionary or pair list of parameter values.

Returns

  • OrderedDict containing the constructed thermodynamic functions (Cp⁰, ΔₐH⁰, S⁰, ΔₐG⁰).
source