www.mooseframework.org
PorousFlowFullySaturatedHeatAdvection.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
11 
13 
14 template <>
15 InputParameters
17 {
18  InputParameters params = validParams<PorousFlowFullySaturatedDarcyBase>();
19  params.addClassDescription("Heat flux that arises from the advection of a fully-saturated single "
20  "phase fluid. No upwinding is used");
21  return params;
22 }
23 
25  const InputParameters & parameters)
27  _enthalpy(getMaterialProperty<std::vector<Real>>("PorousFlow_fluid_phase_enthalpy_qp")),
28  _denthalpy_dvar(getMaterialProperty<std::vector<std::vector<Real>>>(
29  "dPorousFlow_fluid_phase_enthalpy_qp_dvar"))
30 {
31 }
32 
33 Real
35 {
36  const unsigned ph = 0;
38 }
39 
40 Real
42 {
43  const unsigned ph = 0;
44  const Real darcy_mob = PorousFlowFullySaturatedDarcyBase::mobility();
45  const Real ddarcy_mob = PorousFlowFullySaturatedDarcyBase::dmobility(pvar);
46  return _denthalpy_dvar[_qp][ph][pvar] * darcy_mob + _enthalpy[_qp][ph] * ddarcy_mob;
47 }
PorousFlowFullySaturatedDarcyBase::mobility
virtual Real mobility() const
The mobility of the fluid = density / viscosity.
Definition: PorousFlowFullySaturatedDarcyBase.C:115
validParams< PorousFlowFullySaturatedHeatAdvection >
InputParameters validParams< PorousFlowFullySaturatedHeatAdvection >()
Definition: PorousFlowFullySaturatedHeatAdvection.C:16
PorousFlowFullySaturatedHeatAdvection.h
PorousFlowFullySaturatedHeatAdvection::_denthalpy_dvar
const MaterialProperty< std::vector< std::vector< Real > > > & _denthalpy_dvar
Derivative of the enthalpy wrt PorousFlow variables.
Definition: PorousFlowFullySaturatedHeatAdvection.h:36
PorousFlowFullySaturatedHeatAdvection::PorousFlowFullySaturatedHeatAdvection
PorousFlowFullySaturatedHeatAdvection(const InputParameters &parameters)
Definition: PorousFlowFullySaturatedHeatAdvection.C:24
registerMooseObject
registerMooseObject("PorousFlowApp", PorousFlowFullySaturatedHeatAdvection)
PorousFlowFullySaturatedDarcyBase
Darcy advective flux for a fully-saturated, single phase, single component fluid.
Definition: PorousFlowFullySaturatedDarcyBase.h:25
PorousFlowFullySaturatedHeatAdvection::_enthalpy
const MaterialProperty< std::vector< Real > > & _enthalpy
Enthalpy of each phase.
Definition: PorousFlowFullySaturatedHeatAdvection.h:33
PorousFlowFullySaturatedHeatAdvection
Advection of heat via flux via Darcy flow of a single phase fully-saturated fluid.
Definition: PorousFlowFullySaturatedHeatAdvection.h:23
validParams< PorousFlowFullySaturatedDarcyBase >
InputParameters validParams< PorousFlowFullySaturatedDarcyBase >()
Definition: PorousFlowFullySaturatedDarcyBase.C:18
PorousFlowFullySaturatedHeatAdvection::mobility
virtual Real mobility() const override
The mobility of the fluid = density / viscosity.
Definition: PorousFlowFullySaturatedHeatAdvection.C:34
PorousFlowFullySaturatedHeatAdvection::dmobility
virtual Real dmobility(unsigned pvar) const override
The derivative of the mobility with respect to the PorousFlow variable pvar.
Definition: PorousFlowFullySaturatedHeatAdvection.C:41
PorousFlowFullySaturatedDarcyBase::dmobility
virtual Real dmobility(unsigned pvar) const
The derivative of the mobility with respect to the PorousFlow variable pvar.
Definition: PorousFlowFullySaturatedDarcyBase.C:125