WARPXM v1.10.0
Loading...
Searching...
No Matches
artificial_viscosity_limiter_meier.h
Go to the documentation of this file.
1#ifndef WXM_APPS_MHD_ARTIFICIAL_VISCOSITY_LIMITER_MEIER_H
2#define WXM_APPS_MHD_ARTIFICIAL_VISCOSITY_LIMITER_MEIER_H
3
4// Wm includes
6
7namespace wxm
8{
9namespace apps
10{
11namespace mhd
12{
13namespace limiters
14{
15
44{
45public:
50
55
60 void setup(const WxCryptSet& wxc) override;
61
67 const std::vector<int>& getInputVariableIndexes(int flag) const override
68 {
69 return _input_variables;
70 }
71
77 const std::vector<int>& getAuxiliaryVariableIndexes(int flag) const override
78 {
79 return _aux_variables;
80 }
81
87 const std::vector<int>& getOutputVariableIndexes(int flag) const override
88 {
89 return _output_variables;
90 }
91
103 const real* q_r,
104 const real* aux_l,
105 const real* aux_r,
106 const solverVariables_t* pFV,
107 real* numericalFlux) const override;
108
118 const real* aux,
119 const solverVariables_t* pSV,
120 std::vector<std::vector<real>>& internalFlux) const override;
121
122 // specific calls
135 const real* q_r,
136 const real* aux_l,
137 const real* aux_r,
138 const solverVariables_t* pFV,
139 real* numericalFlux) const;
140
153 const real* q_r,
154 const real* aux_l,
155 const real* aux_r,
156 const solverVariables_t* pFV,
157 real* numericalFlux) const;
158
159protected:
160 // viscous multiplier of the limiter
162 // gradient calculation method ("ip" or "ldg")
163 std::string _gradient_method;
164
165 std::vector<int> _input_variables;
166 std::vector<int> _aux_variables;
167 std::vector<int> _output_variables;
168};
169
170} // namespace limiters
171} // namespace mhd
172} // namespace apps
173} // namespace wxm
174
175#endif // WXM_APPS_MHD__ARTIFICIAL_VISCOSITY_LIMITER_MEIER_H
Base Class for physics applications.
Definition: wmapplication.h:93
WxCryptSet extends WxCrypt by providing, in addition to name-value pairs, an set of named WxCryptSets...
Definition: wxcryptset.h:35
Class used implementing artificial viscosity limiter based on velocity gradient as desribed in Eric M...
Definition: artificial_viscosity_limiter_meier.h:44
std::vector< int > _input_variables
Definition: artificial_viscosity_limiter_meier.h:165
real numerical_flux(const real *q_l, const real *q_r, const real *aux_l, const real *aux_r, const solverVariables_t *pFV, real *numericalFlux) const override
Numerical flux definition.
const std::vector< int > & getInputVariableIndexes(int flag) const override
Get input variable indices.
Definition: artificial_viscosity_limiter_meier.h:67
real _coefficient
Definition: artificial_viscosity_limiter_meier.h:161
real internal_flux(const real *q, const real *aux, const solverVariables_t *pSV, std::vector< std::vector< real > > &internalFlux) const override
Internal flux definition.
real numerical_flux_ip(const real *q_l, const real *q_r, const real *aux_l, const real *aux_r, const solverVariables_t *pFV, real *numericalFlux) const
Specific Numerical flux definition for interior penalty method Called by the numerical flux function.
std::vector< int > _output_variables
Definition: artificial_viscosity_limiter_meier.h:167
void setup(const WxCryptSet &wxc) override
Setup.
real numerical_flux_ldg(const real *q_l, const real *q_r, const real *aux_l, const real *aux_r, const solverVariables_t *pFV, real *numericalFlux) const
Specific Numerical flux definition for local discontinuous galerkin method Called by the numerical fl...
const std::vector< int > & getAuxiliaryVariableIndexes(int flag) const override
Get auxiliary variable indices.
Definition: artificial_viscosity_limiter_meier.h:77
std::string _gradient_method
Definition: artificial_viscosity_limiter_meier.h:163
std::vector< int > _aux_variables
Definition: artificial_viscosity_limiter_meier.h:166
const std::vector< int > & getOutputVariableIndexes(int flag) const override
Get output variable indices.
Definition: artificial_viscosity_limiter_meier.h:87
list apps
Definition: shock_tube.py:33
warpy mhd
Definition: mhd_shock.py:32
Base namespace for everything not included in the global namespace.
Definition: field_source.h:8
Definition: wmapplication.h:38
#define real
Definition: wmoclunstructuredreconstruction.h:11