Reaktoro
A unified framework for modeling chemically reactive systems
Reaktoro::ChemicalProperty Namespace Reference

The namespace of all chemical property functions. More...

Functions

auto ionicStrength (const ChemicalSystem &system) -> ChemicalPropertyFunction
 Return the ionic strength of the aqueous phase. More...
 
auto pH (const ChemicalSystem &system) -> ChemicalPropertyFunction
 Return the pH of the system. More...
 
auto pE (const ChemicalSystem &system) -> ChemicalPropertyFunction
 Return the pE of the system. More...
 
auto pE (const ChemicalSystem &system, const ReactionEquation &reaction) -> ChemicalPropertyFunction
 Return the pE of the system calculated using a given half reaction. More...
 
auto Eh (const ChemicalSystem &system) -> ChemicalPropertyFunction
 Return the reduction potential of the system (in units of V). More...
 
auto Eh (const ChemicalSystem &system, const ReactionEquation &reaction) -> ChemicalPropertyFunction
 Return the reduction potential of the system calculated using a given half reaction (in units of V). More...
 
auto alkalinity (const ChemicalSystem &system) -> ChemicalPropertyFunction
 Return the total alkalinity of the aqueous phase (in units of eq/L). More...
 

Detailed Description

The namespace of all chemical property functions.

See also
ChemicalPropertyFunction

Function Documentation

◆ ionicStrength()

auto ionicStrength ( const ChemicalSystem system) -> ChemicalPropertyFunction

Return the ionic strength of the aqueous phase.

If the chemical system has no aqueous phase, then zero is returned.

◆ pH()

auto pH ( const ChemicalSystem system) -> ChemicalPropertyFunction

Return the pH of the system.

The aqueous phase must have a hydron species named either H+, H+(aq), or H[+]. If the chemical system has no aqueous phase, then zero is returned.

◆ pE() [1/2]

auto pE ( const ChemicalSystem system) -> ChemicalPropertyFunction

Return the pE of the system.

This methods calculates pE using the dual chemical potential of charge element. This is an alternative approach to using a half reaction (Kulik, 2006). If the chemical system has no aqueous phase, then zero is returned.

◆ pE() [2/2]

auto pE ( const ChemicalSystem system,
const ReactionEquation reaction 
) -> ChemicalPropertyFunction

Return the pE of the system calculated using a given half reaction.

Use this method to specify a half reaction for the calculation of pE. For example:

ChemicalProperties properties(system);
properties.update(T, P, n);
properties.aqueous().pE("Fe++ = Fe+++ + e-");
properties.aqueous().pE("0.5*O2(aq) + 2*H+ + 2*e- = H2O(l)");

Note that the electro species e- must be present in the half reaction. If the chemical system has no aqueous phase, then zero is returned.

◆ Eh() [1/2]

auto Eh ( const ChemicalSystem system) -> ChemicalPropertyFunction

Return the reduction potential of the system (in units of V).

This methods calculates Eh using the dual chemical potential of charge element. This is an alternative approach to using a half reaction (Kulik, 2006). If the chemical system has no aqueous phase, then zero is returned.

◆ Eh() [2/2]

auto Eh ( const ChemicalSystem system,
const ReactionEquation reaction 
) -> ChemicalPropertyFunction

Return the reduction potential of the system calculated using a given half reaction (in units of V).

Use this method to specify a half reaction for the calculation of Eh. For example:

ChemicalProperties properties(system);
properties.update(T, P, n);
properties.aqueous().Eh("Fe++ = Fe+++ + e-");
properties.aqueous().Eh("0.5*O2(aq) + 2*H+ + 2*e- = H2O(l)");

Note that the electro species e- must be present in the half reaction. If the chemical system has no aqueous phase, then zero is returned.

◆ alkalinity()

auto alkalinity ( const ChemicalSystem system) -> ChemicalPropertyFunction

Return the total alkalinity of the aqueous phase (in units of eq/L).

The total alkalinity (Alk) of the aqueous phase is by default calculated as the acid neutralizing capacity (ANC) of the solution using the formula:

\[ \mathrm{Alk=[Na^{+}]+[K^{+}]+2[Ca^{2+}]+2[Mg^{2+}]-[Cl^{-}]-2[SO_{4}^{2-}]}, \]

where \([\mathrm{species}]\) is the free molar concentration (mol/L) of the species in the solution. This formula is simpler, derived from the charge balance condition, and equivalent to the formula of total alkalinity.

The indices of the aqueous species that contribute to alkalinity

The contribution factors of the aqueous species that contribute to alkalinity