Reaktoro  v2.11.0
A unified framework for modeling chemically reactive systems
ChemicalState::Equilibrium Class Reference

The access to the properties related to an equilibrium state in a ChemicalState object. More...

#include <ChemicalState.hpp>

Public Member Functions

 Equilibrium (ChemicalSystem const &system)
 Construct a ChemicalState::Equilibrium instance.
 
 Equilibrium (Equilibrium const &other)
 Construct a copy of a ChemicalState::Equilibrium instance.
 
virtual ~Equilibrium ()
 Destroy this ChemicalState::Equilibrium instance.
 
auto operator= (Equilibrium other) -> Equilibrium &
 Assign a ChemicalState::Equilibrium instance to this instance.
 
auto reset () -> void
 Reset this object by clearing all information related to a previous computed equilibrium state. More...
 
auto setNamesInputVariables (Strings const &wnames) -> void
 Set the names of the input variables w used in the equilibrium calculation.
 
auto setNamesControlVariablesP (Strings const &pnames) -> void
 Set the names of the computed control variables p in the equilibrium calculation.
 
auto setNamesControlVariablesQ (Strings const &qnames) -> void
 Set the names of the computed control variables q in the equilibrium calculation.
 
auto setInputVariables (ArrayXdConstRef const &w) -> void
 Set the values of the input variables w used in the equilibrium calculation.
 
auto setControlVariablesP (ArrayXdConstRef const &p) -> void
 Set the values of the computed control variables p in the equilibrium calculation.
 
auto setControlVariablesQ (ArrayXdConstRef const &q) -> void
 Set the values of the computed control variables q in the equilibrium calculation.
 
auto setInitialComponentAmounts (ArrayXdConstRef const &c0) -> void
 Set initial component amounts used in the equilibrium calculation.
 
auto setOptimaState (Optima::State const &state) -> void
 Set the Optima::State object computed as part of the equilibrium calculation.
 
auto empty () const -> bool
 Return true if no equilibrium information available.
 
auto numPrimarySpecies () const -> Index
 Return the number of primary species.
 
auto numSecondarySpecies () const -> Index
 Return the number of secondary species.
 
auto indicesPrimarySpecies () const -> ArrayXlConstRef
 Return the indices of the primary species.
 
auto indicesSecondarySpecies () const -> ArrayXlConstRef
 Return the indices of the secondary species.
 
auto elementChemicalPotentials () const -> ArrayXdConstRef
 Return the chemical potentials of the elements in the equilibrium state (in J/mol).
 
auto speciesStabilities () const -> ArrayXdConstRef
 Return the stabilities of the chemical species in the equilibrium state (normalized by RT). More...
 
auto explicitTitrantAmount (String const &name) const -> real
 Return the amount of an explicit titrant in the equilibrium state (in mol). More...
 
auto implicitTitrantAmount (String const &name) const -> real
 Return the amount of an implicit titrant in the equilibrium state (in mol). More...
 
auto titrantAmount (String const &name) const -> real
 Return the amount of either an explicit or implicit titrant in the equilibrium state (in mol). More...
 
auto namesInputVariables () const -> Strings const &
 Return the names of the input variables w used in the equilibrium calculation.
 
auto namesControlVariablesP () const -> Strings const &
 Return the names of the computed control variables p in the equilibrium calculation.
 
auto namesControlVariablesQ () const -> Strings const &
 Return the names of the computed control variables q in the equilibrium calculation.
 
auto inputVariables () const -> ArrayXdConstRef
 Return the values of the input variables w used in the equilibrium calculation.
 
auto controlVariablesP () const -> ArrayXdConstRef
 Return the computed control variables p in the equilibrium calculation.
 
auto controlVariablesQ () const -> ArrayXdConstRef
 Return the computed control variables q in the equilibrium calculation.
 
auto initialComponentAmounts () const -> ArrayXdConstRef
 Return the initial component amounts used in the equilibrium calculation.
 
auto w () const -> ArrayXdConstRef
 Return the values of the input variables used in the equilibrium calculation.
 
auto p () const -> ArrayXdConstRef
 Return the control variables p computed in the equilibrium calculation.
 
auto q () const -> ArrayXdConstRef
 Return the control variables q computed in the equilibrium calculation.
 
auto c () const -> ArrayXdConstRef
 Return the initial component amounts used in the equilibrium calculation.
 
auto optimaState () const -> Optima::State const &
 Return the Optima::State object computed as part of the equilibrium calculation.
 

Detailed Description

The access to the properties related to an equilibrium state in a ChemicalState object.

Member Function Documentation

◆ reset()

auto reset ( ) -> void

Reset this object by clearing all information related to a previous computed equilibrium state.

This method can be used right after a failed calculation, so that the next tentative, with possibly a different initial guess, does not use Lagrange multipliers from the failed computation.

◆ speciesStabilities()

auto speciesStabilities ( ) const -> ArrayXdConstRef

Return the stabilities of the chemical species in the equilibrium state (normalized by RT).

These are the slack variables with respect to bound constraints on the amounts of the species in a chemical equilibrium calculation. They can be interpreted as measures of stability of a species at equilibrium, with values closer to zero meaning more stable and away from the bounds.

◆ explicitTitrantAmount()

auto explicitTitrantAmount ( String const &  name) const -> real

Return the amount of an explicit titrant in the equilibrium state (in mol).

Parameters
nameThe name of the explicit titrant.

◆ implicitTitrantAmount()

auto implicitTitrantAmount ( String const &  name) const -> real

Return the amount of an implicit titrant in the equilibrium state (in mol).

Parameters
nameThe name of the implicit titrant.

◆ titrantAmount()

auto titrantAmount ( String const &  name) const -> real

Return the amount of either an explicit or implicit titrant in the equilibrium state (in mol).

Parameters
nameThe name of the explicit or implicit titrant.

The documentation for this class was generated from the following file: