typename GenericMaterialPropertyStruct< T, is_ad >::type GenericMaterialProperty
Moose::GenericType< Real, is_ad > GenericReal
PorousFlowMassVolumetricExpansionTempl< false > PorousFlowMassVolumetricExpansion
PorousFlowMassVolumetricExpansionTempl< true > ADPorousFlowMassVolumetricExpansion
const VariablePhiGradient & _grad_phi
const InputParameters & parameters() const
This holds maps between the nonlinear variables used in a PorousFlow simulation and the variable numb...
Base class for PorousFlow kernels that use mass-lumped (nodal) material properties.
Kernel = mass_component * rate_of_solid_volumetric_expansion where mass_component = porosity * sum_ph...
virtual Real computeQpJacobian() override
const GenericMaterialProperty< std::vector< Real >, is_ad > & _fluid_saturation
Nodal fluid saturation.
virtual Real computeQpOffDiagJacobian(unsigned int jvar) override
const unsigned int _fluid_component
The fluid component index.
const MaterialProperty< std::vector< Real > > *const _dporosity_dvar
d(porosity)/d(PorousFlow variable) at the nodes
const MaterialProperty< std::vector< std::vector< std::vector< Real > > > > *const _dmass_frac_dvar
d(nodal mass fraction)/d(PorousFlow variable)
const bool _multiply_by_density
Whether to multiply by density.
Real computedVolQpJac(unsigned int jvar) const
Derivative of volumetric-strain part of the residual with respect to the Variable with variable numbe...
usingGenericKernelMembers
Real computedMassQpJac(unsigned int jvar) const
Derivative of mass part of the residual with respect to the Variable with variable number jvar.
const bool _var_is_porflow_var
Whether the Variable for this Kernel is a PorousFlow variable according to the Dictator.
const MaterialProperty< std::vector< RealGradient > > *const _dstrain_rate_qp_dvar
d(strain rate)/d(PorousFlow variable)
const unsigned int _num_phases
Number of fluid phases.
const GenericMaterialProperty< std::vector< std::vector< Real > >, is_ad > & _mass_frac
Nodal mass fraction.
const MaterialProperty< std::vector< std::vector< Real > > > *const _dfluid_saturation_dvar
d(nodal fluid saturation)/d(PorousFlow variable)
const GenericMaterialProperty< std::vector< Real >, is_ad > *const _fluid_density
Nodal fluid density.
virtual GenericReal< is_ad > computeQpResidual() override
const PorousFlowDictator & _dictator
PorousFlowDictator UserObject.
const MaterialProperty< unsigned int > *const _nearest_qp
The nearest qp to the node.
const GenericMaterialProperty< Real, is_ad > & _porosity
Porosity at the nodes.
const MaterialProperty< std::vector< RealGradient > > *const _dporosity_dgradvar
d(porosity)/d(grad PorousFlow variable) at the qps
const bool _strain_at_nearest_qp
Whether the porosity uses the volumetric strain at the closest quadpoint.
const MaterialProperty< std::vector< std::vector< Real > > > *const _dfluid_density_dvar
d(nodal fluid density)/d(PorousFlow variable)
const GenericMaterialProperty< Real, is_ad > & _strain_rate_qp
Strain rate.
static InputParameters validParams()