https://mooseframework.inl.gov
PCNSFVFluidEnergyHLLC.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
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 
10 #include "PCNSFVFluidEnergyHLLC.h"
11 #include "NS.h"
12 
13 registerMooseObject("NavierStokesApp", PCNSFVFluidEnergyHLLC);
14 
17 {
19  params.addClassDescription(
20  "Implements the fluid energy flux portion of the porous HLLC discretization.");
21  return params;
22 }
23 
25  : PCNSFVHLLC(params),
26  _ht_elem(getADMaterialProperty<Real>(NS::specific_total_enthalpy)),
27  _ht_neighbor(getNeighborADMaterialProperty<Real>(NS::specific_total_enthalpy))
28 {
29 }
30 
31 ADReal
33 {
35 }
36 
37 ADReal
39 {
41 }
42 
43 ADReal
45 {
46  return _rho_et_elem[_qp] / _rho_elem[_qp] +
49 }
50 
51 ADReal
53 {
57 }
58 
59 ADReal
61 {
62  return _eps_elem[_qp] * _rho_et_elem[_qp];
63 }
64 
65 ADReal
67 {
69 }
const MaterialProperty< Real > & _eps_elem
porosities left == elem, right == neighbor
Definition: PCNSFVHLLC.h:105
const ADMaterialProperty< Real > & _ht_elem
enthalpies left == elem, right == neighbor
Implements the advective flux in the porous conservation of fluid energy equation using a HLLC discre...
const ADMaterialProperty< Real > & _rho_et_elem
total energies left == elem, right == neighbor
Definition: PCNSFVHLLC.h:80
ADReal _SL
the wave speeds
Definition: PCNSFVHLLC.h:61
ADReal _SM
Definition: PCNSFVHLLC.h:62
const ADMaterialProperty< Real > & _ht_neighbor
const ADMaterialProperty< Real > & _pressure_neighbor
Definition: PCNSFVHLLC.h:101
static InputParameters validParams()
virtual ADReal hllcElem() override
HLLC modifications to flux for elem & neighbor, see Toro.
DualNumber< Real, DNDerivativeType, true > ADReal
virtual ADReal hllcNeighbor() override
ADReal _normal_speed_neighbor
Definition: PCNSFVHLLC.h:68
PCNSFVFluidEnergyHLLC(const InputParameters &params)
virtual ADReal fluxElem() override
flux functions on elem & neighbor, i.e. standard left/right values of F
const ADMaterialProperty< Real > & _rho_elem
densities left == elem, right == neighbor
Definition: PCNSFVHLLC.h:95
virtual ADReal fluxNeighbor() override
Base class for porous HLLC inter-cell flux kernels.
Definition: PCNSFVHLLC.h:23
ADReal _SR
Definition: PCNSFVHLLC.h:63
const unsigned int _qp
virtual ADReal conservedVariableElem() override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static const std::string specific_total_enthalpy
Definition: NS.h:69
virtual ADReal conservedVariableNeighbor() override
registerMooseObject("NavierStokesApp", PCNSFVFluidEnergyHLLC)
static InputParameters validParams()
Definition: PCNSFVHLLC.C:17
void addClassDescription(const std::string &doc_string)
const ADMaterialProperty< Real > & _rho_neighbor
Definition: PCNSFVHLLC.h:96
const MaterialProperty< Real > & _eps_neighbor
Definition: PCNSFVHLLC.h:106
const ADMaterialProperty< Real > & _rho_et_neighbor
Definition: PCNSFVHLLC.h:81
const ADMaterialProperty< Real > & _pressure_elem
pressures left == elem, right == neighbor
Definition: PCNSFVHLLC.h:100
ADReal _normal_speed_elem
speeds normal to the interface
Definition: PCNSFVHLLC.h:67