72 const std::vector<Real> & basis_species_molality,
73 const std::vector<Real> & eqm_species_molality,
74 const std::vector<Real> & kin_species_molality)
override;
79 std::vector<Real> & basis_activity_coef,
80 std::vector<Real> & eqm_activity_coef)
const override;
const ModelGeochemicalDatabase mgd
const GeochemicalDatabaseReader db("database/moose_testdb.json", true, true, false)
Fit the equilibrium constant values read from the thermodynamic databse at specified temperature valu...
Class for reading geochemical reactions from a MOOSE geochemical database.
Computes activity coefficients for non-minerals and non-gases (since these species do not have activi...
unsigned _num_basis
number of basis species
Real _sqrt_ionic_strength
current value of sqrt(ionic strength)
EquilibriumConstantInterpolator _interp_b_neutral
Interpolator object for the Debye-Huckel parameter b_neutral.
Real _ionic_strength
current value of ionic strength
const GeochemistryNeutralSpeciesActivity _database_dh_water
Debye-Huckel parameters found in the database for computing the water activities.
const GeochemistryIonicStrength & _is_calculator
ionic-strength calculator
const DebyeHuckelParameters & getDebyeHuckel() const
EquilibriumConstantInterpolator _interp_d_water
Interpolator object for the Debye-Huckel parameter d_water.
EquilibriumConstantInterpolator _interp_Bdot
Interpolator object for the Debye-Huckel parameter Bdot.
EquilibriumConstantInterpolator _interp_a_neutral
Interpolator object for the Debye-Huckel parameter a_neutral.
EquilibriumConstantInterpolator _interp_b_water
Interpolator object for the Debye-Huckel parameter b_water.
EquilibriumConstantInterpolator _interp_c_neutral
Interpolator object for the Debye-Huckel parameter c_neutral.
EquilibriumConstantInterpolator _interp_d_neutral
Interpolator object for the Debye-Huckel parameter d_neutral.
const unsigned _numT
number of temperature points in the database file
const GeochemistryNeutralSpeciesActivity _database_dh_neutral
Debye-Huckel parameters found in the database for computing the neutral (CO2) activities.
Real getStoichiometricIonicStrength() const
Return the current value of stoichiometric ionic strength.
EquilibriumConstantInterpolator _interp_B
Interpolator object for the Debye-Huckel parameter B.
void setInternalParameters(Real temperature, const ModelGeochemicalDatabase &mgd, const std::vector< Real > &basis_species_molality, const std::vector< Real > &eqm_species_molality, const std::vector< Real > &kin_species_molality) override
Sets internal parameters, such as the ionic strength and Debye-Huckel parameters, prior to computing ...
const GeochemistryDebyeHuckel _database_dh_params
Debye-Huckel parameters found in the database.
DebyeHuckelParameters _dh
Debye-Huckel parameters.
Real _stoichiometric_ionic_strength
current value of stoichiometric ionic strength
EquilibriumConstantInterpolator _interp_A
Interpolator object for the Debye-Huckel parameter A.
unsigned _num_eqm
number of equilibrium species
void buildActivityCoefficients(const ModelGeochemicalDatabase &mgd, std::vector< Real > &basis_activity_coef, std::vector< Real > &eqm_activity_coef) const override
Compute the activity coefficients and store them in basis_activity_coef and eqm_activity_coef Note:
EquilibriumConstantInterpolator _interp_c_water
Interpolator object for the Debye-Huckel parameter c_water.
Real getIonicStrength() const
Return the current value of ionic strength.
Real waterActivity() const override
Computes and returns the activity of water.
EquilibriumConstantInterpolator _interp_a_water
Interpolator object for the Debye-Huckel parameter a_water.
Base class to compute activity coefficients for non-minerals and non-gases (since these species do no...
Calculators to compute ionic strength and stoichiometric ionic strength.
bool operator==(const DebyeHuckelParameters &rhs) const
Data structure for Debye-Huckel activity coefficients.
Data structure for neutral species activity coefficients.
Data structure to hold all relevant information from the database file.