TimeIndependentReactionSolver
This sets up a simple time-independent MOOSE simulation, with no spatial dependence and no "usual" solution process (with Kernels, etc). Apart from setting up a dummy Mesh, Variables, etc, this Action adds a GeochemistryTimeIndependentReactor userobject, many AuxVariables corresponding to molality, free-mg, free-cm3, pH, etc using the GeochemistryQuantityAux and a console output object, the GeochemistryConsoleOutput.
Here are some simple of examples of where this Action is used in the test suite:
An example input file is:
# Time-independent model of water from the Red Sea including precipitation
[TimeIndependentReactionSolver]
model_definition = definition
swap_out_of_basis = "O2(aq) Ba++"
swap_into_basis = "Sphalerite Barite"
charge_balance_species = "Cl-"
constraint_species = "H2O H+ Na+ K+ Mg++ Ca++ Cl- SO4-- HCO3- Cu+ F- Fe++ Pb++ Zn++ Sphalerite Barite"
constraint_value = " 1.0 -5.6 5.42 0.0643 0.0423 0.173 5.89 0.0118 0.00309 5.50E-06 0.000354 0.00195 4.09E-06 0.000111 5.87E-8 9.772E-6"
constraint_meaning = "kg_solvent_water log10activity bulk_composition bulk_composition bulk_composition bulk_composition bulk_composition bulk_composition bulk_composition bulk_composition bulk_composition bulk_composition bulk_composition bulk_composition bulk_composition bulk_composition"
constraint_unit = " kg dimensionless moles moles moles moles moles moles moles moles moles moles moles moles moles moles"
ramp_max_ionic_strength_initial = 0
temperature = 60
stoichiometric_ionic_str_using_Cl_only = true # for comparison with GWB
mol_cutoff = 1E-7
abs_tol = 1E-12
[]
[UserObjects]
[definition]
type = GeochemicalModelDefinition
database_file = "../../../database/moose_geochemdb.json"
basis_species = "H2O H+ Na+ K+ Mg++ Ca++ Cl- SO4-- HCO3- Cu+ F- Fe++ Pb++ Zn++ O2(aq) Ba++"
equilibrium_minerals = "Sphalerite Barite Fluorite Chalcocite Bornite Chalcopyrite Pyrite Galena Covellite"
piecewise_linear_interpolation = true # for comparison with GWB
[]
[]
(modules/geochemistry/test/tests/equilibrium_models/red_sea_precip.i)