https://mooseframework.inl.gov
PCNSFVHLLCBC.h
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 #pragma once
11 
12 #include "FVFluxBC.h"
13 
15 
19 class PCNSFVHLLCBC : public FVFluxBC
20 {
21 public:
23 
25 
26 protected:
27  virtual ADReal computeQpResidual() override;
28 
33  virtual void preComputeWaveSpeed() = 0;
34 
36  virtual ADReal fluxElem() = 0;
37  virtual ADReal fluxBoundary() = 0;
39 
41  virtual ADReal hllcElem() = 0;
42  virtual ADReal hllcBoundary() = 0;
44 
46  virtual ADReal conservedVariableElem() = 0;
47  virtual ADReal conservedVariableBoundary() = 0;
49 
52 
63 
69 
72 
84 };
virtual ADReal fluxBoundary()=0
virtual ADReal fluxElem()=0
flux functions on elem & from boundary
virtual ADReal computeQpResidual() override
Definition: PCNSFVHLLCBC.C:38
const SinglePhaseFluidProperties & _fluid
fluid properties
Definition: PCNSFVHLLCBC.h:51
virtual ADReal hllcBoundary()=0
PCNSFVHLLCBC(const InputParameters &parameters)
Definition: PCNSFVHLLCBC.C:23
const ADMaterialProperty< Real > & _ht_elem
Definition: PCNSFVHLLCBC.h:60
ADReal _rho_boundary
Definition: PCNSFVHLLCBC.h:75
virtual ADReal conservedVariableBoundary()=0
Real _eps_boundary
Definition: PCNSFVHLLCBC.h:82
virtual ADReal conservedVariableElem()=0
conserved variable of this equation from elem and boundary
Base clase for HLLC boundary conditions for the Euler equation.
Definition: PCNSFVHLLCBC.h:19
DualNumber< Real, DNDerivativeType, true > ADReal
const ADMaterialProperty< RealVectorValue > & _vel_elem
Definition: PCNSFVHLLCBC.h:55
static InputParameters validParams()
Definition: PCNSFVHLLCBC.C:16
const ADMaterialProperty< Real > & _specific_internal_energy_elem
material properties on the elem side of the boundary
Definition: PCNSFVHLLCBC.h:54
ADRealVectorValue _vel_boundary
Definition: PCNSFVHLLCBC.h:76
ADReal _specific_internal_energy_boundary
Definition: PCNSFVHLLCBC.h:77
const ADMaterialProperty< Real > & _rho_et_elem
Definition: PCNSFVHLLCBC.h:59
ADReal _rho_et_boundary
Definition: PCNSFVHLLCBC.h:81
Common class for single phase fluid properties.
virtual ADReal hllcElem()=0
HLLC modifications to flux for elem & boundary, see Toro.
ADReal _et_boundary
Definition: PCNSFVHLLCBC.h:80
ADReal _normal_speed_boundary
these quantities must be computed in preComputeWaveSpeed
Definition: PCNSFVHLLCBC.h:74
ADReal _SL
the wave speeds
Definition: PCNSFVHLLCBC.h:65
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
ADReal _normal_speed_elem
speeds normal to the interface on the element side
Definition: PCNSFVHLLCBC.h:71
const ADMaterialProperty< Real > & _speed_elem
Definition: PCNSFVHLLCBC.h:56
const ADMaterialProperty< Real > & _rho_elem
Definition: PCNSFVHLLCBC.h:57
const InputParameters & parameters() const
const ADMaterialProperty< Real > & _pressure_elem
Definition: PCNSFVHLLCBC.h:58
ADReal _pressure_boundary
Definition: PCNSFVHLLCBC.h:78
virtual void preComputeWaveSpeed()=0
this function is a call back for setting quantities for computing wave speed before calling the wave ...
ADReal _ht_boundary
Definition: PCNSFVHLLCBC.h:79
const MaterialProperty< Real > & _eps_elem
Definition: PCNSFVHLLCBC.h:61