Fluid state class using a persistent set of primary variables for the mutliphase, single component case. More...
#include <PorousFlowFluidStateSingleComponent.h>
Public Member Functions | |
PorousFlowFluidStateSingleComponent (const InputParameters ¶meters) | |
Protected Member Functions | |
virtual void | initQpStatefulProperties () override |
virtual void | computeQpProperties () override |
void | setMaterialVectorSize () const |
Size material property vectors and initialise with zeros. More... | |
virtual void | thermophysicalProperties () |
Calculates all required thermophysical properties and derivatives for each phase and fluid component. More... | |
Protected Attributes | |
const VariableValue & | _liquid_porepressure |
Porepressure. More... | |
const VariableGradient & | _liquid_gradp_qp |
Gradient of porepressure (only defined at the qps) More... | |
const unsigned int | _liquid_porepressure_varnum |
Moose variable number of the porepressure. More... | |
const unsigned int | _pvar |
PorousFlow variable number of the porepressure. More... | |
const VariableValue & | _enthalpy |
Enthalpy. More... | |
const VariableGradient & | _gradh_qp |
Gradient of enthalpy (only defined at the qps) More... | |
const unsigned int | _enthalpy_varnum |
Moose variable number of the enthalpy. More... | |
const unsigned int | _hvar |
PorousFlow variable number of the enthalpy. More... | |
const PorousFlowFluidStateSingleComponentBase & | _fs |
FluidState UserObject. More... | |
const unsigned int | _aqueous_phase_number |
Phase number of the aqueous phase. More... | |
const unsigned int | _gas_phase_number |
Phase number of the gas phase. More... | |
MaterialProperty< Real > & | _temperature |
Temperature. More... | |
MaterialProperty< RealGradient > * | _grad_temperature_qp |
Gradient of temperature (only defined at the qps) More... | |
MaterialProperty< std::vector< Real > > & | _dtemperature_dvar |
Derivative of temperature wrt PorousFlow variables. More... | |
MaterialProperty< std::vector< Real > > *const | _dgrad_temperature_dgradv |
d(grad temperature)/d(grad PorousFlow variable) at the quadpoints More... | |
MaterialProperty< std::vector< RealGradient > > *const | _dgrad_temperature_dv |
d(grad temperature)/d(PorousFlow variable) at the quadpoints More... | |
MaterialProperty< std::vector< std::vector< Real > > > & | _mass_frac |
Mass fraction matrix. More... | |
MaterialProperty< std::vector< std::vector< RealGradient > > > * | _grad_mass_frac_qp |
Gradient of the mass fraction matrix (only defined at the qps) More... | |
MaterialProperty< std::vector< std::vector< std::vector< Real > > > > & | _dmass_frac_dvar |
Derivative of the mass fraction matrix with respect to the Porous Flow variables. More... | |
MaterialProperty< std::vector< Real > > & | _fluid_density |
Fluid density of each phase. More... | |
MaterialProperty< std::vector< std::vector< Real > > > & | _dfluid_density_dvar |
Derivative of the fluid density for each phase wrt PorousFlow variables. More... | |
MaterialProperty< std::vector< Real > > & | _fluid_viscosity |
Viscosity of each phase. More... | |
MaterialProperty< std::vector< std::vector< Real > > > & | _dfluid_viscosity_dvar |
Derivative of the fluid viscosity for each phase wrt PorousFlow variables. More... | |
MaterialProperty< std::vector< Real > > & | _fluid_enthalpy |
Enthalpy of each phase. More... | |
MaterialProperty< std::vector< std::vector< Real > > > & | _dfluid_enthalpy_dvar |
Derivative of the fluid enthalpy for each phase wrt PorousFlow variables. More... | |
MaterialProperty< std::vector< Real > > & | _fluid_internal_energy |
Internal energy of each phase. More... | |
MaterialProperty< std::vector< std::vector< Real > > > & | _dfluid_internal_energy_dvar |
Derivative of the fluid internal energy for each phase wrt PorousFlow variables. More... | |
const Real | _T_c2k |
Conversion from degrees Celsius to degrees Kelvin. More... | |
bool | _is_initqp |
Flag to indicate whether to calculate stateful properties. More... | |
std::vector< FluidStateProperties > | _fsp |
FluidStateProperties data structure. More... | |
FluidStatePhaseEnum | _phase_state |
FluidStatePhaseEnum. More... | |
const PorousFlowCapillaryPressure & | _pc |
Capillary pressure UserObject. More... | |
const unsigned int | _pidx |
Index of derivative wrt pressure. More... | |
const unsigned int | _hidx |
Index of derivative wrt enthalpy. More... | |
const unsigned int | _num_phases |
Number of phases. More... | |
const unsigned int | _num_components |
Number of components. More... | |
const unsigned int | _num_pf_vars |
Number of PorousFlow variables. More... | |
MaterialProperty< std::vector< Real > > & | _porepressure |
Computed nodal or quadpoint values of porepressure of the phases. More... | |
MaterialProperty< std::vector< std::vector< Real > > > & | _dporepressure_dvar |
d(porepressure)/d(PorousFlow variable) More... | |
MaterialProperty< std::vector< RealGradient > > *const | _gradp_qp |
Grad(p) at the quadpoints. More... | |
MaterialProperty< std::vector< std::vector< Real > > > *const | _dgradp_qp_dgradv |
d(grad porepressure)/d(grad PorousFlow variable) at the quadpoints More... | |
MaterialProperty< std::vector< std::vector< RealGradient > > > *const | _dgradp_qp_dv |
d(grad porepressure)/d(PorousFlow variable) at the quadpoints More... | |
MaterialProperty< std::vector< Real > > & | _saturation |
Computed nodal or qp saturation of the phases. More... | |
MaterialProperty< std::vector< std::vector< Real > > > & | _dsaturation_dvar |
d(saturation)/d(PorousFlow variable) More... | |
MaterialProperty< std::vector< RealGradient > > *const | _grads_qp |
Grad(s) at the quadpoints. More... | |
MaterialProperty< std::vector< std::vector< Real > > > *const | _dgrads_qp_dgradv |
d(grad saturation)/d(grad PorousFlow variable) at the quadpoints More... | |
MaterialProperty< std::vector< std::vector< RealGradient > > > *const | _dgrads_qp_dv |
d(grad saturation)/d(PorousFlow variable) at the quadpoints More... | |
Fluid state class using a persistent set of primary variables for the mutliphase, single component case.
Primary variables are: liquid pressure and enthalpy.
The PorousFlow kernels expect saturation and mass fractions (as well as pressure and temperature), so these must be calculated from the primary variables once the state of the system is determined.
Definition at line 31 of file PorousFlowFluidStateSingleComponent.h.
PorousFlowFluidStateSingleComponent::PorousFlowFluidStateSingleComponent | ( | const InputParameters & | parameters | ) |
Definition at line 35 of file PorousFlowFluidStateSingleComponent.C.
|
overrideprotectedvirtual |
Reimplemented from PorousFlowVariableBase.
Definition at line 176 of file PorousFlowFluidStateSingleComponent.C.
|
overrideprotectedvirtual |
Reimplemented from PorousFlowVariableBase.
Definition at line 143 of file PorousFlowFluidStateSingleComponent.C.
|
protected |
Size material property vectors and initialise with zeros.
Definition at line 341 of file PorousFlowFluidStateSingleComponent.C.
Referenced by computeQpProperties(), and initQpStatefulProperties().
|
protectedvirtual |
Calculates all required thermophysical properties and derivatives for each phase and fluid component.
Definition at line 136 of file PorousFlowFluidStateSingleComponent.C.
Referenced by computeQpProperties(), and initQpStatefulProperties().
|
protected |
Phase number of the aqueous phase.
Definition at line 68 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), and initQpStatefulProperties().
|
protected |
Derivative of the fluid density for each phase wrt PorousFlow variables.
Definition at line 90 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), and setMaterialVectorSize().
|
protected |
Derivative of the fluid enthalpy for each phase wrt PorousFlow variables.
Definition at line 98 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), and setMaterialVectorSize().
|
protected |
Derivative of the fluid internal energy for each phase wrt PorousFlow variables.
Definition at line 102 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), and setMaterialVectorSize().
|
protected |
Derivative of the fluid viscosity for each phase wrt PorousFlow variables.
Definition at line 94 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), and setMaterialVectorSize().
|
protected |
d(grad temperature)/d(grad PorousFlow variable) at the quadpoints
Definition at line 78 of file PorousFlowFluidStateSingleComponent.h.
|
protected |
d(grad temperature)/d(PorousFlow variable) at the quadpoints
Definition at line 80 of file PorousFlowFluidStateSingleComponent.h.
|
protectedinherited |
d(grad porepressure)/d(grad PorousFlow variable) at the quadpoints
Definition at line 53 of file PorousFlowVariableBase.h.
Referenced by computeQpProperties(), and PorousFlowFluidState::computeQpProperties().
|
protectedinherited |
d(grad porepressure)/d(PorousFlow variable) at the quadpoints
Definition at line 56 of file PorousFlowVariableBase.h.
|
protectedinherited |
d(grad saturation)/d(grad PorousFlow variable) at the quadpoints
Definition at line 68 of file PorousFlowVariableBase.h.
|
protectedinherited |
d(grad saturation)/d(PorousFlow variable) at the quadpoints
Definition at line 71 of file PorousFlowVariableBase.h.
|
protected |
Derivative of the mass fraction matrix with respect to the Porous Flow variables.
Definition at line 86 of file PorousFlowFluidStateSingleComponent.h.
Referenced by setMaterialVectorSize().
|
protectedinherited |
d(porepressure)/d(PorousFlow variable)
Definition at line 47 of file PorousFlowVariableBase.h.
Referenced by PorousFlow1PhaseFullySaturated::computeQpProperties(), PorousFlow2PhasePP::computeQpProperties(), PorousFlow1PhaseMD_Gaussian::computeQpProperties(), PorousFlow1PhaseP::computeQpProperties(), PorousFlowVariableBase::computeQpProperties(), PorousFlow2PhasePS::computeQpProperties(), computeQpProperties(), and PorousFlowFluidState::computeQpProperties().
|
protectedinherited |
d(saturation)/d(PorousFlow variable)
Definition at line 62 of file PorousFlowVariableBase.h.
Referenced by PorousFlow2PhasePP::computeQpProperties(), PorousFlowVariableBase::computeQpProperties(), PorousFlow1PhaseMD_Gaussian::computeQpProperties(), PorousFlow1PhaseP::computeQpProperties(), PorousFlow2PhasePS::computeQpProperties(), computeQpProperties(), and PorousFlowFluidState::computeQpProperties().
|
protected |
Derivative of temperature wrt PorousFlow variables.
Definition at line 76 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), and setMaterialVectorSize().
|
protected |
Enthalpy.
Definition at line 58 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), and thermophysicalProperties().
|
protected |
Moose variable number of the enthalpy.
Definition at line 62 of file PorousFlowFluidStateSingleComponent.h.
|
protected |
Fluid density of each phase.
Definition at line 88 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), initQpStatefulProperties(), and setMaterialVectorSize().
|
protected |
Enthalpy of each phase.
Definition at line 96 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), initQpStatefulProperties(), and setMaterialVectorSize().
|
protected |
Internal energy of each phase.
Definition at line 100 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), initQpStatefulProperties(), and setMaterialVectorSize().
|
protected |
Viscosity of each phase.
Definition at line 92 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), initQpStatefulProperties(), and setMaterialVectorSize().
|
protected |
FluidState UserObject.
Definition at line 66 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), PorousFlowFluidStateSingleComponent(), and thermophysicalProperties().
|
protected |
FluidStateProperties data structure.
Definition at line 108 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), initQpStatefulProperties(), PorousFlowFluidStateSingleComponent(), and thermophysicalProperties().
|
protected |
Phase number of the gas phase.
Definition at line 70 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties().
|
protected |
Gradient of the mass fraction matrix (only defined at the qps)
Definition at line 84 of file PorousFlowFluidStateSingleComponent.h.
|
protected |
Gradient of temperature (only defined at the qps)
Definition at line 74 of file PorousFlowFluidStateSingleComponent.h.
|
protected |
Gradient of enthalpy (only defined at the qps)
Definition at line 60 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties().
|
protectedinherited |
Grad(p) at the quadpoints.
Definition at line 50 of file PorousFlowVariableBase.h.
|
protectedinherited |
Grad(s) at the quadpoints.
Definition at line 65 of file PorousFlowVariableBase.h.
|
protected |
Index of derivative wrt enthalpy.
Definition at line 116 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties().
|
protected |
PorousFlow variable number of the enthalpy.
Definition at line 64 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties().
|
protected |
Flag to indicate whether to calculate stateful properties.
Definition at line 106 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), initQpStatefulProperties(), and setMaterialVectorSize().
|
protected |
Gradient of porepressure (only defined at the qps)
Definition at line 52 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties().
|
protected |
Porepressure.
Definition at line 50 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), and thermophysicalProperties().
|
protected |
Moose variable number of the porepressure.
Definition at line 54 of file PorousFlowFluidStateSingleComponent.h.
|
protected |
Mass fraction matrix.
Definition at line 82 of file PorousFlowFluidStateSingleComponent.h.
Referenced by setMaterialVectorSize().
|
protectedinherited |
Number of components.
Definition at line 38 of file PorousFlowVariableBase.h.
Referenced by computeQpProperties(), PorousFlowFluidState::computeQpProperties(), PorousFlowFluidState::initQpStatefulProperties(), PorousFlowFluidState::PorousFlowFluidState(), PorousFlowFluidStateSingleComponent(), setMaterialVectorSize(), and PorousFlowFluidState::setMaterialVectorSize().
|
protectedinherited |
Number of PorousFlow variables.
Definition at line 41 of file PorousFlowVariableBase.h.
Referenced by PorousFlowVariableBase::computeQpProperties(), setMaterialVectorSize(), and PorousFlowFluidState::setMaterialVectorSize().
|
protectedinherited |
Number of phases.
Definition at line 35 of file PorousFlowVariableBase.h.
Referenced by PorousFlowVariableBase::computeQpProperties(), PorousFlow2PhasePS::computeQpProperties(), computeQpProperties(), PorousFlowFluidState::computeQpProperties(), PorousFlowVariableBase::initQpStatefulProperties(), initQpStatefulProperties(), PorousFlowFluidState::initQpStatefulProperties(), PorousFlow1PhaseFullySaturated::PorousFlow1PhaseFullySaturated(), PorousFlow1PhaseMD_Gaussian::PorousFlow1PhaseMD_Gaussian(), PorousFlow1PhaseP::PorousFlow1PhaseP(), PorousFlow2PhasePP::PorousFlow2PhasePP(), PorousFlowFluidState::PorousFlowFluidState(), PorousFlowFluidStateSingleComponent(), setMaterialVectorSize(), and PorousFlowFluidState::setMaterialVectorSize().
|
protected |
Capillary pressure UserObject.
Definition at line 112 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties().
|
protected |
FluidStatePhaseEnum.
Definition at line 110 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), and thermophysicalProperties().
|
protected |
Index of derivative wrt pressure.
Definition at line 114 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties().
|
protectedinherited |
Computed nodal or quadpoint values of porepressure of the phases.
Definition at line 44 of file PorousFlowVariableBase.h.
Referenced by PorousFlow1PhaseMD_Gaussian::buildPS(), PorousFlow2PhasePS::buildQpPPSS(), PorousFlow1PhaseFullySaturated::buildQpPPSS(), PorousFlow1PhaseP::buildQpPPSS(), PorousFlow2PhasePP::buildQpPPSS(), PorousFlow1PhaseMD_Gaussian::computeQpProperties(), PorousFlowVariableBase::computeQpProperties(), computeQpProperties(), PorousFlowFluidState::computeQpProperties(), PorousFlowVariableBase::initQpStatefulProperties(), initQpStatefulProperties(), and PorousFlowFluidState::initQpStatefulProperties().
|
protected |
PorousFlow variable number of the porepressure.
Definition at line 56 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties().
|
protectedinherited |
Computed nodal or qp saturation of the phases.
Definition at line 59 of file PorousFlowVariableBase.h.
Referenced by PorousFlow1PhaseMD_Gaussian::buildPS(), PorousFlow2PhasePS::buildQpPPSS(), PorousFlow1PhaseFullySaturated::buildQpPPSS(), PorousFlow1PhaseP::buildQpPPSS(), PorousFlow2PhasePP::buildQpPPSS(), PorousFlow1PhaseMD_Gaussian::computeQpProperties(), PorousFlowVariableBase::computeQpProperties(), computeQpProperties(), PorousFlowFluidState::computeQpProperties(), PorousFlowVariableBase::initQpStatefulProperties(), initQpStatefulProperties(), and PorousFlowFluidState::initQpStatefulProperties().
|
protected |
Conversion from degrees Celsius to degrees Kelvin.
Definition at line 104 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), and initQpStatefulProperties().
|
protected |
Temperature.
Definition at line 72 of file PorousFlowFluidStateSingleComponent.h.
Referenced by computeQpProperties(), and initQpStatefulProperties().