Material designed to form a std::vector of property and derivatives of these wrt the nonlinear variables from the individual phase properties. More...
#include <PorousFlowJoiner.h>
Public Types | |
typedef DerivativeMaterialPropertyNameInterface::SymbolName | SymbolName |
Public Member Functions | |
PorousFlowJoinerTempl (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 Member Functions | |
virtual void | initQpStatefulProperties () override |
virtual void | computeQpProperties () override |
Protected Attributes | |
const std::string | _pf_prop |
Name of material property to be joined. More... | |
const MaterialProperty< std::vector< std::vector< Real > > > *const | _dporepressure_dvar |
Derivatives of porepressure variable wrt PorousFlow variables at the qps or nodes. More... | |
const MaterialProperty< std::vector< std::vector< Real > > > *const | _dsaturation_dvar |
Derivatives of saturation variable wrt PorousFlow variables at the qps or nodes. More... | |
const MaterialProperty< std::vector< Real > > *const | _dtemperature_dvar |
Derivatives of temperature variable wrt PorousFlow variables at the qps or nodes. More... | |
const bool | _has_mass_fraction |
Flag to check whether mass fractions are used. More... | |
const MaterialProperty< std::vector< std::vector< std::vector< Real > > > > *const | _dmass_fraction_dvar |
Derivatives of mass fraction variable wrt PorousFlow variables at the qps or nodes. More... | |
GenericMaterialProperty< std::vector< Real >, is_ad > & | _property |
Computed property of the phase. More... | |
MaterialProperty< std::vector< std::vector< Real > > > *const | _dproperty_dvar |
d(property)/d(PorousFlow variable) More... | |
std::vector< const GenericMaterialProperty< Real, is_ad > * > | _phase_property |
Property of each phase. More... | |
std::vector< const MaterialProperty< Real > * > | _dphase_property_dp |
d(property of each phase)/d(pressure) More... | |
std::vector< const MaterialProperty< Real > * > | _dphase_property_ds |
d(property of each phase)/d(saturation) More... | |
std::vector< const MaterialProperty< Real > * > | _dphase_property_dt |
d(property of each phase)/d(temperature) More... | |
std::vector< const MaterialProperty< Real > * > | _dphase_property_dX |
d(property of each phase)/d(mass fraction) More... | |
const unsigned int | _num_phases |
Number of phases. More... | |
const unsigned int | _num_components |
Number of fluid components. More... | |
const unsigned int | _num_var |
Number of PorousFlow variables. More... | |
Material designed to form a std::vector of property and derivatives of these wrt the nonlinear variables from the individual phase properties.
Values at the quadpoint or the nodes are formed depending on _at_qps
Properties can be viscosities, densities, thermal conductivities , etc and the user specifies the property they are interested in using the pf_prop string.
Also, using d(property)/dP, d(property)/dS, etc, and dP/dvar, dS/dvar, etc, the matrix of derivatives of property with respect to the nonlinear Variables, var, are computed.
Only values at the nodes are used - not at the quadpoints
Definition at line 32 of file PorousFlowJoiner.h.
PorousFlowJoinerTempl< is_ad >::PorousFlowJoinerTempl | ( | const InputParameters & | parameters | ) |
Definition at line 31 of file PorousFlowJoiner.C.
|
overrideprotectedvirtual |
Definition at line 108 of file PorousFlowJoiner.C.
|
overrideprotectedvirtual |
Definition at line 98 of file PorousFlowJoiner.C.
|
static |
Definition at line 18 of file PorousFlowJoiner.C.
|
protected |
Derivatives of mass fraction variable wrt PorousFlow variables at the qps or nodes.
Definition at line 59 of file PorousFlowJoiner.h.
|
protected |
d(property of each phase)/d(pressure)
Definition at line 71 of file PorousFlowJoiner.h.
Referenced by PorousFlowJoinerTempl< is_ad >::PorousFlowJoinerTempl().
|
protected |
d(property of each phase)/d(saturation)
Definition at line 74 of file PorousFlowJoiner.h.
Referenced by PorousFlowJoinerTempl< is_ad >::PorousFlowJoinerTempl().
|
protected |
d(property of each phase)/d(temperature)
Definition at line 77 of file PorousFlowJoiner.h.
Referenced by PorousFlowJoinerTempl< is_ad >::PorousFlowJoinerTempl().
|
protected |
d(property of each phase)/d(mass fraction)
Definition at line 80 of file PorousFlowJoiner.h.
Referenced by PorousFlowJoinerTempl< is_ad >::PorousFlowJoinerTempl().
|
protected |
Derivatives of porepressure variable wrt PorousFlow variables at the qps or nodes.
Definition at line 47 of file PorousFlowJoiner.h.
|
protected |
d(property)/d(PorousFlow variable)
Definition at line 65 of file PorousFlowJoiner.h.
|
protected |
Derivatives of saturation variable wrt PorousFlow variables at the qps or nodes.
Definition at line 50 of file PorousFlowJoiner.h.
|
protected |
Derivatives of temperature variable wrt PorousFlow variables at the qps or nodes.
Definition at line 53 of file PorousFlowJoiner.h.
|
protected |
Flag to check whether mass fractions are used.
Definition at line 56 of file PorousFlowJoiner.h.
|
protectedinherited |
Number of fluid components.
Definition at line 30 of file PorousFlowMaterialVectorBase.h.
Referenced by PorousFlowMassFractionAqueousEquilibriumChemistry::computeQpProperties(), PorousFlowAqueousPreDisChemistry::PorousFlowAqueousPreDisChemistry(), PorousFlowDiffusivityBaseTempl< is_ad >::PorousFlowDiffusivityBaseTempl(), and PorousFlowMassFractionTempl< is_ad >::PorousFlowMassFractionTempl().
|
protectedinherited |
Number of phases.
Definition at line 27 of file PorousFlowMaterialVectorBase.h.
Referenced by PorousFlowDiffusivityBaseTempl< is_ad >::PorousFlowDiffusivityBaseTempl(), PorousFlowDiffusivityConstTempl< is_ad >::PorousFlowDiffusivityConstTempl(), PorousFlowJoinerTempl< is_ad >::PorousFlowJoinerTempl(), PorousFlowMassFractionTempl< is_ad >::PorousFlowMassFractionTempl(), PorousFlowThermalConductivityFromPorosityTempl< is_ad >::PorousFlowThermalConductivityFromPorosityTempl(), PorousFlowThermalConductivityIdealTempl< is_ad >::PorousFlowThermalConductivityIdealTempl(), and PorousFlowTotalGravitationalDensityFullySaturatedFromPorosity::PorousFlowTotalGravitationalDensityFullySaturatedFromPorosity().
|
protectedinherited |
Number of PorousFlow variables.
Definition at line 33 of file PorousFlowMaterialVectorBase.h.
Referenced by PorousFlowVolumetricStrain::computeQpProperties(), PorousFlowAqueousPreDisChemistry::computeQpProperties(), PorousFlowMassFractionAqueousEquilibriumChemistry::computeQpProperties(), PorousFlowPorosityLinear::computeQpProperties(), PorousFlowPorosityHMBiotModulus::computeQpProperties(), PorousFlowTotalGravitationalDensityFullySaturatedFromPorosity::computeQpProperties(), PorousFlowPorosityExponentialBase::computeQpProperties(), PorousFlowAqueousPreDisChemistry::initQpStatefulProperties(), and PorousFlowPorosityLinear::initQpStatefulProperties().
|
protected |
Name of material property to be joined.
Definition at line 44 of file PorousFlowJoiner.h.
Referenced by PorousFlowJoinerTempl< is_ad >::PorousFlowJoinerTempl().
|
protected |
Property of each phase.
Definition at line 68 of file PorousFlowJoiner.h.
Referenced by PorousFlowJoinerTempl< is_ad >::PorousFlowJoinerTempl().
|
protected |
Computed property of the phase.
Definition at line 62 of file PorousFlowJoiner.h.