https://mooseframework.inl.gov
Classes | Namespaces | Enumerations | Functions
GeochemistryKineticRateCalculator.h File Reference

Go to the source code of this file.

Classes

struct  KineticRateUserDescription
 Holds a user-specified description of a kinetic rate. More...
 

Namespaces

 GeochemistryKineticRateCalculator
 Provides a parametric description of a general kinetic rate.
 

Enumerations

enum  DirectionChoiceEnum {
  BOTH, DISSOLUTION, PRECIPITATION, RAW,
  DEATH
}
 This controls the direction of a kinetic rate BOTH: both dissolution and precipitation are allowed PRECIPITATION: if log10(activity_product) < log10(equilibrium_constant) so that dissolution should occur, then the rate is set to zero DISSOLUTION: if log10(activity_product) > log10(equilibrium_constant) so that precipitation should occur, then the rate is set to zero RAW: rate is unimpacted by sign of log10(activity_product) / log10(equilibrium_constant) DEATH: rate is unimpacted by sign of log10(activity_product) / log10(equilibrium_constant). More...
 

Functions

void GeochemistryKineticRateCalculator::calculateRate (const std::vector< Real > &promoting_indices, const std::vector< Real > &promoting_monod_indices, const std::vector< Real > &promoting_half_saturation, const KineticRateUserDescription &description, const std::vector< std::string > &basis_species_name, const std::vector< bool > &basis_species_gas, const std::vector< Real > &basis_molality, const std::vector< Real > &basis_activity, const std::vector< bool > &basis_activity_known, const std::vector< std::string > &eqm_species_name, const std::vector< bool > &eqm_species_gas, const std::vector< Real > &eqm_molality, const std::vector< Real > &eqm_activity, const DenseMatrix< Real > &eqm_stoichiometry, Real kin_moles, Real kin_species_molecular_weight, Real log10K, Real log10_activity_product, const DenseMatrix< Real > &kin_stoichiometry, unsigned kin, Real temp_degC, Real &rate, Real &drate_dkin, std::vector< Real > &drate_dmol)
 Calclates a kinetic rate and its derivative. More...
 

Enumeration Type Documentation

◆ DirectionChoiceEnum

This controls the direction of a kinetic rate BOTH: both dissolution and precipitation are allowed PRECIPITATION: if log10(activity_product) < log10(equilibrium_constant) so that dissolution should occur, then the rate is set to zero DISSOLUTION: if log10(activity_product) > log10(equilibrium_constant) so that precipitation should occur, then the rate is set to zero RAW: rate is unimpacted by sign of log10(activity_product) / log10(equilibrium_constant) DEATH: rate is unimpacted by sign of log10(activity_product) / log10(equilibrium_constant).

This is different from RAW because no reaction products are produced: the kinetic rate is only used to modify the kinetic species' mass. This is useful to model biological mortality.

Enumerator
BOTH 
DISSOLUTION 
PRECIPITATION 
RAW 
DEATH 

Definition at line 28 of file GeochemistryKineticRateCalculator.h.