21 "Variable that is the porepressure of the gas phase");
23 MooseEnum unit_choice(
"Kelvin=0 Celsius=1",
"Kelvin");
25 "temperature_unit", unit_choice,
"The unit of the temperature variable");
27 params.
addRequiredParam<UserObjectName>(
"fluid_state",
"Name of the FluidState UserObject");
28 params.
addCoupledVar(
"xnacl", 0,
"The salt mass fraction in the brine (kg/kg)");
30 "PorousFlowDictator",
"The UserObject that holds the list of PorousFlow variable names");
37 _gas_porepressure(coupledValue(
"gas_porepressure")),
38 _temperature(coupledValue(
"temperature")),
39 _Xnacl(coupledValue(
"xnacl")),
40 _saturation(coupledValue(
"saturation")),
41 _T_c2k(getParam<
MooseEnum>(
"temperature_unit") == 0 ? 0.0 : 273.15),
PorousFlowFluidStateIC calculates an initial value for the total mass fraction of a component summed ...
const VariableValue & _Xnacl
NaCl mass fraction (kg/kg)
PorousFlowFluidStateIC(const InputParameters ¶meters)
virtual Real value(const Point &p) override
Compositional flash routines for miscible multiphase flow classes with multiple fluid components...
static InputParameters validParams()
const VariableValue & _saturation
Gas saturation (-)
registerMooseObject("PorousFlowApp", PorousFlowFluidStateIC)
const Real _T_c2k
Conversion from degrees Celsius to degrees Kelvin.
static InputParameters validParams()
virtual Real totalMassFraction(Real pressure, Real temperature, Real Xnacl, Real saturation, unsigned int qp) const =0
Total mass fraction of fluid component summed over all phases in the two-phase state for a specified ...
const PorousFlowFluidStateMultiComponentBase & _fs
FluidState UserObject.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
This holds maps between the nonlinear variables used in a PorousFlow simulation and the variable numb...
const VariableValue & _temperature
Fluid temperature (C or K)
const VariableValue & _gas_porepressure
Gas porepressure (Pa)