Base class for fluid properties materials. More...
#include <PorousFlowFluidPropertiesBase.h>
Public Types | |
typedef DerivativeMaterialPropertyNameInterface::SymbolName | SymbolName |
Public Member Functions | |
PorousFlowFluidPropertiesBaseTempl (const InputParameters ¶meters) | |
const GenericMaterialProperty< U, is_ad > & | getDefaultMaterialProperty (const std::string &name) |
const GenericMaterialProperty< U, is_ad > & | getDefaultMaterialPropertyByName (const std::string &name) |
void | validateDerivativeMaterialPropertyBase (const std::string &base) |
const MaterialPropertyName | derivativePropertyName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) const |
const MaterialPropertyName | derivativePropertyNameFirst (const MaterialPropertyName &base, const SymbolName &c1) const |
const MaterialPropertyName | derivativePropertyNameSecond (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2) const |
const MaterialPropertyName | derivativePropertyNameThird (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2, const SymbolName &c3) const |
GenericMaterialProperty< U, is_ad > & | declarePropertyDerivative (const std::string &base, const std::vector< VariableName > &c) |
GenericMaterialProperty< U, is_ad > & | declarePropertyDerivative (const std::string &base, const std::vector< SymbolName > &c) |
GenericMaterialProperty< U, is_ad > & | declarePropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="") |
GenericMaterialProperty< U, is_ad > & | declarePropertyDerivative (const std::string &base, const std::vector< VariableName > &c) |
GenericMaterialProperty< U, is_ad > & | declarePropertyDerivative (const std::string &base, const std::vector< SymbolName > &c) |
GenericMaterialProperty< U, is_ad > & | declarePropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="") |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const std::vector< VariableName > &c) |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const std::vector< SymbolName > &c) |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="") |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, unsigned int v2, unsigned int v3=libMesh::invalid_uint) |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, unsigned int v1, unsigned int v2=libMesh::invalid_uint, unsigned int v3=libMesh::invalid_uint) |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const std::vector< VariableName > &c) |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const std::vector< SymbolName > &c) |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="") |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, unsigned int v2, unsigned int v3=libMesh::invalid_uint) |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, unsigned int v1, unsigned int v2=libMesh::invalid_uint, unsigned int v3=libMesh::invalid_uint) |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< VariableName > &c) |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="") |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< VariableName > &c) |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) |
const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="") |
void | validateCoupling (const MaterialPropertyName &base, const std::vector< VariableName > &c, bool validate_aux=true) |
void | validateCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="") |
void | validateCoupling (const MaterialPropertyName &base, const std::vector< VariableName > &c, bool validate_aux=true) |
void | validateCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="") |
void | validateNonlinearCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="") |
void | validateNonlinearCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="") |
const MaterialPropertyName | propertyName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) const |
const MaterialPropertyName | propertyName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) const |
const MaterialPropertyName | propertyNameFirst (const MaterialPropertyName &base, const SymbolName &c1) const |
const MaterialPropertyName | propertyNameFirst (const MaterialPropertyName &base, const SymbolName &c1) const |
const MaterialPropertyName | propertyNameSecond (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2) const |
const MaterialPropertyName | propertyNameSecond (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2) const |
const MaterialPropertyName | propertyNameThird (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2, const SymbolName &c3) const |
const MaterialPropertyName | propertyNameThird (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2, const SymbolName &c3) const |
Static Public Member Functions | |
static InputParameters | validParams () |
Protected Types | |
enum | PressureUnitEnum { PressureUnitEnum::Pa, PressureUnitEnum::MPa } |
Unit used for porepressure. More... | |
enum | TimeUnitEnum { TimeUnitEnum::seconds, TimeUnitEnum::hours, TimeUnitEnum::days, TimeUnitEnum::years } |
Unit used for time. More... | |
Protected Member Functions | |
virtual void | computeQpProperties () override |
Protected Attributes | |
const GenericMaterialProperty< std::vector< Real >, is_ad > & | _porepressure |
Pore pressure at the nodes or quadpoints. More... | |
const GenericMaterialProperty< Real, is_ad > & | _temperature |
Fluid temperature at the nodes or quadpoints. More... | |
const Real | _t_c2k |
Conversion from degrees Celsius to degrees Kelvin. More... | |
const Real | _R |
Universal gas constant. More... | |
enum PorousFlowFluidPropertiesBaseTempl::PressureUnitEnum | _p_unit |
const Real | _pressure_to_Pascals |
convert porepressure to Pascals by multiplying by this quantity More... | |
enum PorousFlowFluidPropertiesBaseTempl::TimeUnitEnum | _time_unit |
const Real | _time_to_seconds |
convert time to seconds by multiplying by this quantity More... | |
const bool | _compute_rho_mu |
If true, this Material will compute density and viscosity, and their derivatives. More... | |
const bool | _compute_internal_energy |
If true, this Material will compute internal energy and its derivatives. More... | |
const bool | _compute_enthalpy |
If true, this Material will compute enthalpy and its derivatives. More... | |
GenericMaterialProperty< Real, is_ad > *const | _density |
Fluid phase density at the qps or nodes. More... | |
MaterialProperty< Real > *const | _ddensity_dp |
Derivative of fluid density wrt phase pore pressure at the qps or nodes. More... | |
MaterialProperty< Real > *const | _ddensity_dT |
Derivative of fluid density wrt temperature at the qps or nodes. More... | |
GenericMaterialProperty< Real, is_ad > *const | _viscosity |
Fluid phase viscosity at the nodes. More... | |
MaterialProperty< Real > *const | _dviscosity_dp |
Derivative of fluid phase viscosity wrt pressure at the nodes. More... | |
MaterialProperty< Real > *const | _dviscosity_dT |
Derivative of fluid phase viscosity wrt temperature at the nodes. More... | |
GenericMaterialProperty< Real, is_ad > *const | _internal_energy |
Fluid phase internal_energy at the qps or nodes. More... | |
MaterialProperty< Real > *const | _dinternal_energy_dp |
Derivative of fluid internal_energy wrt phase pore pressure at the qps or nodes. More... | |
MaterialProperty< Real > *const | _dinternal_energy_dT |
Derivative of fluid internal_energy wrt temperature at the qps or nodes. More... | |
GenericMaterialProperty< Real, is_ad > *const | _enthalpy |
Fluid phase enthalpy at the qps or nodes. More... | |
MaterialProperty< Real > *const | _denthalpy_dp |
Derivative of fluid enthalpy wrt phase pore pressure at the qps or nodes. More... | |
MaterialProperty< Real > *const | _denthalpy_dT |
Derivative of fluid enthalpy wrt temperature at the qps or nodes. More... | |
const unsigned int | _phase_num |
Phase number of fluid. More... | |
const std::string | _phase |
Stringified fluid phase number. More... | |
Base class for fluid properties materials.
All PorousFlow fluid materials must override computeQpProperties()
Definition at line 20 of file PorousFlowFluidPropertiesBase.h.
|
strongprotected |
Unit used for porepressure.
Enumerator | |
---|---|
Pa | |
MPa |
Definition at line 43 of file PorousFlowFluidPropertiesBase.h.
|
strongprotected |
Unit used for time.
Enumerator | |
---|---|
seconds | |
hours | |
days | |
years |
Definition at line 49 of file PorousFlowFluidPropertiesBase.h.
PorousFlowFluidPropertiesBaseTempl< is_ad >::PorousFlowFluidPropertiesBaseTempl | ( | const InputParameters & | parameters | ) |
Definition at line 41 of file PorousFlowFluidPropertiesBase.C.
|
overrideprotectedvirtual |
Reimplemented in PorousFlowMultiComponentFluidTempl< is_ad >, PorousFlowSingleComponentFluidTempl< is_ad >, and PorousFlowBrine.
Definition at line 162 of file PorousFlowFluidPropertiesBase.C.
|
static |
Definition at line 14 of file PorousFlowFluidPropertiesBase.C.
Referenced by PorousFlowBrine::validParams(), PorousFlowSingleComponentFluidTempl< is_ad >::validParams(), and PorousFlowMultiComponentFluidTempl< is_ad >::validParams().
|
protected |
If true, this Material will compute enthalpy and its derivatives.
Definition at line 61 of file PorousFlowFluidPropertiesBase.h.
Referenced by PorousFlowBrine::computeQpProperties(), and PorousFlowBrine::initQpStatefulProperties().
|
protected |
If true, this Material will compute internal energy and its derivatives.
Definition at line 58 of file PorousFlowFluidPropertiesBase.h.
Referenced by PorousFlowBrine::computeQpProperties(), and PorousFlowBrine::initQpStatefulProperties().
|
protected |
If true, this Material will compute density and viscosity, and their derivatives.
Definition at line 55 of file PorousFlowFluidPropertiesBase.h.
Referenced by PorousFlowBrine::computeQpProperties(), and PorousFlowBrine::initQpStatefulProperties().
|
protected |
Derivative of fluid density wrt phase pore pressure at the qps or nodes.
Definition at line 67 of file PorousFlowFluidPropertiesBase.h.
|
protected |
Derivative of fluid density wrt temperature at the qps or nodes.
Definition at line 70 of file PorousFlowFluidPropertiesBase.h.
|
protected |
Fluid phase density at the qps or nodes.
Definition at line 64 of file PorousFlowFluidPropertiesBase.h.
|
protected |
Derivative of fluid enthalpy wrt phase pore pressure at the qps or nodes.
Definition at line 94 of file PorousFlowFluidPropertiesBase.h.
|
protected |
Derivative of fluid enthalpy wrt temperature at the qps or nodes.
Definition at line 97 of file PorousFlowFluidPropertiesBase.h.
|
protected |
Derivative of fluid internal_energy wrt phase pore pressure at the qps or nodes.
Definition at line 85 of file PorousFlowFluidPropertiesBase.h.
|
protected |
Derivative of fluid internal_energy wrt temperature at the qps or nodes.
Definition at line 88 of file PorousFlowFluidPropertiesBase.h.
|
protected |
Derivative of fluid phase viscosity wrt pressure at the nodes.
Definition at line 76 of file PorousFlowFluidPropertiesBase.h.
|
protected |
Derivative of fluid phase viscosity wrt temperature at the nodes.
Definition at line 79 of file PorousFlowFluidPropertiesBase.h.
|
protected |
Fluid phase enthalpy at the qps or nodes.
Definition at line 91 of file PorousFlowFluidPropertiesBase.h.
|
protected |
Fluid phase internal_energy at the qps or nodes.
Definition at line 82 of file PorousFlowFluidPropertiesBase.h.
|
protected |
|
protectedinherited |
Stringified fluid phase number.
Definition at line 34 of file PorousFlowMaterialBase.h.
|
protectedinherited |
Phase number of fluid.
Definition at line 31 of file PorousFlowMaterialBase.h.
Referenced by PorousFlowBrine::computeQpProperties(), PorousFlowBrine::initQpStatefulProperties(), and PorousFlowMaterialBase::PorousFlowMaterialBase().
|
protected |
Pore pressure at the nodes or quadpoints.
Definition at line 31 of file PorousFlowFluidPropertiesBase.h.
Referenced by PorousFlowBrine::computeQpProperties(), and PorousFlowBrine::initQpStatefulProperties().
|
protected |
convert porepressure to Pascals by multiplying by this quantity
Definition at line 46 of file PorousFlowFluidPropertiesBase.h.
|
protected |
Universal gas constant.
Definition at line 40 of file PorousFlowFluidPropertiesBase.h.
|
protected |
Conversion from degrees Celsius to degrees Kelvin.
Definition at line 37 of file PorousFlowFluidPropertiesBase.h.
Referenced by PorousFlowBrine::computeQpProperties(), and PorousFlowBrine::initQpStatefulProperties().
|
protected |
Fluid temperature at the nodes or quadpoints.
Definition at line 34 of file PorousFlowFluidPropertiesBase.h.
Referenced by PorousFlowBrine::computeQpProperties(), and PorousFlowBrine::initQpStatefulProperties().
|
protected |
convert time to seconds by multiplying by this quantity
Definition at line 52 of file PorousFlowFluidPropertiesBase.h.
|
protected |
|
protected |
Fluid phase viscosity at the nodes.
Definition at line 73 of file PorousFlowFluidPropertiesBase.h.