Reaktoro  v2.1.1 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.

## ◆ 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
 name The 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
 name The 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
 name The name of the explicit or implicit titrant.

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