19 RealVectorValue g(0, 0, -9.81);
20 params.
addParam<RealVectorValue>(
"gravity", g,
"Gravity vector. Defaults to (0, 0, -9.81)");
22 "The PorousFlowDictator UserObject");
23 params.
set<
unsigned short>(
"ghost_layers") = 2;
31 _num_phases(_dictator.numPhases()),
32 _density(getADMaterialProperty<
std::vector<Real>>(
"PorousFlow_fluid_phase_density_qp")),
34 getNeighborADMaterialProperty<
std::vector<Real>>(
"PorousFlow_fluid_phase_density_qp")),
35 _viscosity(getADMaterialProperty<
std::vector<Real>>(
"PorousFlow_viscosity_qp")),
37 getNeighborADMaterialProperty<
std::vector<Real>>(
"PorousFlow_viscosity_qp")),
38 _enthalpy(getADMaterialProperty<
std::vector<Real>>(
"PorousFlow_fluid_phase_enthalpy_qp")),
40 getNeighborADMaterialProperty<
std::vector<Real>>(
"PorousFlow_fluid_phase_enthalpy_qp")),
41 _relperm(getADMaterialProperty<
std::vector<Real>>(
"PorousFlow_relative_permeability_qp")),
43 getNeighborADMaterialProperty<
std::vector<Real>>(
"PorousFlow_relative_permeability_qp")),
44 _permeability(getADMaterialProperty<RealTensorValue>(
"PorousFlow_permeability_qp")),
45 _permeability_neighbor(
46 getNeighborADMaterialProperty<RealTensorValue>(
"PorousFlow_permeability_qp")),
47 _pressure(getADMaterialProperty<
std::vector<Real>>(
"PorousFlow_porepressure_qp")),
49 getNeighborADMaterialProperty<
std::vector<Real>>(
"PorousFlow_porepressure_qp")),
50 _grad_p(getADMaterialProperty<
std::vector<RealGradient>>(
"PorousFlow_grad_porepressure_qp")),
51 _gravity(getParam<RealVectorValue>(
"gravity"))
90 interpolate(Moose::FV::InterpMethod::Upwind,
99 flux += mobility * pressure_grad *
_normal;
DualNumber< Real, DNDerivativeType, true > ADReal
registerADMooseObject("PorousFlowApp", FVPorousFlowHeatAdvection)
static InputParameters validParams()
bool onBoundary(const FaceInfo &fi) const
const FaceInfo * _face_info
Advective flux of heat energy.
const ADMaterialProperty< RealTensorValue > & _permeability
Permeability.
const RealVectorValue & _gravity
Gravity vector.
const ADMaterialProperty< std::vector< Real > > & _relperm
Relative permeability.
const ADMaterialProperty< std::vector< Real > > & _viscosity_neighbor
const ADMaterialProperty< std::vector< Real > > & _density
Fluid density.
const ADMaterialProperty< std::vector< Real > > & _relperm_neighbor
const ADMaterialProperty< std::vector< Real > > & _enthalpy
Fluid enthalpy.
const ADMaterialProperty< std::vector< Real > > & _pressure
Fluid pressure.
const ADMaterialProperty< std::vector< Real > > & _density_neighbor
const ADMaterialProperty< std::vector< Real > > & _pressure_neighbor
const ADMaterialProperty< std::vector< RealGradient > > & _grad_p
const ADMaterialProperty< RealTensorValue > & _permeability_neighbor
FVPorousFlowHeatAdvection(const InputParameters ¶ms)
const ADMaterialProperty< std::vector< Real > > & _viscosity
Fluid viscosity.
static InputParameters validParams()
virtual ADReal computeQpResidual() override
const ADMaterialProperty< std::vector< Real > > & _enthalpy_neighbor
const unsigned int _num_phases
Number of fluid phases present.
const Point & eCN() const
This holds maps between the nonlinear variables used in a PorousFlow simulation and the variable numb...