www.mooseframework.org
Functions
PorousFlowMassFractionAqueousEquilibriumChemistry.C File Reference

Go to the source code of this file.

Functions

 registerMooseObject ("PorousFlowApp", PorousFlowMassFractionAqueousEquilibriumChemistry)
 
template<>
InputParameters validParams< PorousFlowMassFractionAqueousEquilibriumChemistry > ()
 

Function Documentation

◆ registerMooseObject()

registerMooseObject ( "PorousFlowApp"  ,
PorousFlowMassFractionAqueousEquilibriumChemistry   
)

◆ validParams< PorousFlowMassFractionAqueousEquilibriumChemistry >()

Definition at line 16 of file PorousFlowMassFractionAqueousEquilibriumChemistry.C.

17 {
18  InputParameters params = validParams<PorousFlowMaterialVectorBase>();
19  params.addRequiredCoupledVar(
20  "mass_fraction_vars",
21  "List of variables that represent the mass fractions. For the aqueous phase these are "
22  "concentrations of the primary species with units m^{3}(chemical)/m^{3}(fluid phase). For "
23  "the other phases (if any) these will typically be initialised to zero and will not change "
24  "throughout the simulation. Format is 'f_ph0^c0 f_ph0^c1 f_ph0^c2 ... f_ph0^c(N-1) f_ph1^c0 "
25  "f_ph1^c1 fph1^c2 ... fph1^c(N-1) ... fphP^c0 f_phP^c1 fphP^c2 ... fphP^c(N-1)' where "
26  "N=number of primary species and P=num_phases, and it is assumed that "
27  "f_ph^cN=1-sum(f_ph^c,{c,0,N-1}) so that f_ph^cN need not be given.");
28  params.addRequiredParam<unsigned>("num_reactions",
29  "Number of equations in the system of chemical reactions");
30  params.addParam<bool>("equilibrium_constants_as_log10",
31  false,
32  "If true, the equilibrium constants are written in their log10 form, eg, "
33  "-2. If false, the equilibrium constants are written in absolute terms, "
34  "eg, 0.01");
35  params.addRequiredCoupledVar("equilibrium_constants",
36  "Equilibrium constant for each equation (dimensionless). If these "
37  "are temperature dependent AuxVariables, the Jacobian will not be "
38  "exact");
39  params.addRequiredParam<std::vector<Real>>(
40  "primary_activity_coefficients",
41  "Activity coefficients for the primary species (dimensionless) (one for each)");
42  params.addRequiredParam<std::vector<Real>>(
43  "reactions",
44  "A matrix defining the aqueous reactions. The matrix is entered as a long vector: the first "
45  "row is "
46  "entered first, followed by the second row, etc. There should be num_reactions rows. All "
47  "primary species should appear only on the LHS of each reaction (and there should be just "
48  "one secondary species on the RHS, by definition) so they may have negative coefficients. "
49  "Each row should have number of primary_concentrations entries, which are the stoichiometric "
50  "coefficients. The first coefficient must always correspond to the first primary species, "
51  "etc");
52  params.addRequiredParam<std::vector<Real>>(
53  "secondary_activity_coefficients",
54  "Activity coefficients for the secondary species (dimensionless) (one for each reaction)");
55  params.addPrivateParam<std::string>("pf_material_type", "mass_fraction");
56  params.addClassDescription(
57  "This Material forms a std::vector<std::vector ...> of mass-fractions "
58  "(total concentrations of primary species (m^{3}(primary species)/m^{3}(solution)) and since "
59  "this is for an aqueous system only, mass-fraction equals volume-fraction) corresponding to "
60  "an "
61  "aqueous equilibrium chemistry system. The first mass fraction is the "
62  "concentration of the first primary species, etc, and the last mass "
63  "fraction is the concentration of H2O.");
64  return params;
65 }
validParams< PorousFlowMaterialVectorBase >
InputParameters validParams< PorousFlowMaterialVectorBase >()
Definition: PorousFlowMaterialVectorBase.C:14