51#define usingPorousFlowPorosityBaseMembers \
52 using PorousFlowPorosityBaseTempl<is_ad>::_qp; \
53 using PorousFlowPorosityBaseTempl<is_ad>::_num_var; \
54 using PorousFlowPorosityBaseTempl<is_ad>::_porosity; \
55 using PorousFlowPorosityBaseTempl<is_ad>::_dporosity_dvar; \
56 using PorousFlowPorosityBaseTempl<is_ad>::_dporosity_dgradvar; \
57 using PorousFlowPorosityBaseTempl<is_ad>::_porosity_min; \
58 using PorousFlowPorosityBaseTempl<is_ad>::_zero_modifier; \
59 using PorousFlowPorosityBaseTempl<is_ad>::applyPorosityMin; \
60 using Coupleable::coupledValue
typename GenericMaterialPropertyStruct< T, is_ad >::type GenericMaterialProperty
PorousFlowPorosityBaseTempl< false > PorousFlowPorosityBase
PorousFlowPorosityBaseTempl< true > ADPorousFlowPorosityBase
Base class for all PorousFlow vector materials.
Base class Material designed to provide the porosity.
MaterialProperty< std::vector< RealGradient > > *const _dporosity_dgradvar
d(porosity)/d(grad PorousFlow variable)
MaterialProperty< std::vector< Real > > *const _dporosity_dvar
d(porosity)/d(PorousFlow variable)
const Real _zero_modifier
When the porosity_min floor is active, the porosity derivatives are multiplied by this.
const Real _porosity_min
Minimum allowed porosity (default zero, so porosity is never negative)
void applyPorosityMin()
If _porosity[_qp] < porosity_min, set _porosity[_qp] = porosity_min and multiply the derivatives of p...
GenericMaterialProperty< Real, is_ad > & _porosity
Computed porosity at the nodes or quadpoints.
static InputParameters validParams()