WARPXM v1.10.0
Loading...
Searching...
No Matches
kh_instability_kinetic.h
Go to the documentation of this file.
1#ifndef wmapplication_kh_instability_kinetic_fluid_vars_h
2#define wmapplication_kh_instability_kinetic_fluid_vars_h
3
4// WARPXM includes
6
7namespace wxm
8{
9namespace apps
10{
11namespace functions
12{
13namespace five_moment
14{
22{
23public:
29
35
40 void setup(const WxCryptSet& wxc) override;
41
47 const std::vector<int>& getOutputVariableIndexes(int flag) const override
48 {
49 return _output_fluid;
50 }
51
59 void evaluate_function(const real* q,
60 const real* aux,
61 const solverVariables_t* pSV,
62 real* result) const override;
63
64 void bc_q(const real* q_in,
65 const real* aux_in,
66 const real* aux_out,
67 const solverVariables_t* pFV,
68 real* q_out) const override;
69
70protected:
71 std::vector<int> _output_fluid;
72
75 real _d_width; // shear_layer_width
76
79 std::vector<real> _perturbation_center;
80
81 std::vector<real> _n_fit_xvec;
82 std::vector<real> _n_fit_acoeffs;
83 std::vector<real> _n_fit_bcoeffs;
84
85 std::vector<real> _vy_fit_xvec;
86 std::vector<real> _vy_fit_acoeffs;
87 std::vector<real> _vy_fit_bcoeffs;
88
89 std::vector<real> _Ty_fit_xvec;
90 std::vector<real> _Ty_fit_acoeffs;
91 std::vector<real> _Ty_fit_bcoeffs;
92
93 mutable std::map<real, real> _n_fit_cache;
94 mutable std::map<real, real> _vy_fit_cache;
95 mutable std::map<real, real> _Ty_fit_cache;
96
98
99private:
104};
105
106} // namespace five_moment
107} // namespace functions
108} // namespace apps
109} // namespace wxm
110
111#endif
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
2D2V Kelvin-Helmholtz Instability where the kinetic variables are converted to fluid Used in hybrid s...
Definition: kh_instability_kinetic.h:22
std::vector< real > _perturbation_center
Definition: kh_instability_kinetic.h:79
std::vector< real > _Ty_fit_bcoeffs
Definition: kh_instability_kinetic.h:91
std::vector< real > _Ty_fit_acoeffs
Definition: kh_instability_kinetic.h:90
const std::vector< int > & getOutputVariableIndexes(int flag) const override
Grab output variable indices.
Definition: kh_instability_kinetic.h:47
std::vector< real > _n_fit_acoeffs
Definition: kh_instability_kinetic.h:82
std::map< real, real > _vy_fit_cache
Definition: kh_instability_kinetic.h:94
std::vector< int > _output_fluid
Definition: kh_instability_kinetic.h:71
void evaluate_function(const real *q, const real *aux, const solverVariables_t *pSV, real *result) const override
Redefinition of the function evaluator.
std::vector< real > _n_fit_bcoeffs
Definition: kh_instability_kinetic.h:83
std::map< real, real > _Ty_fit_cache
Definition: kh_instability_kinetic.h:95
std::vector< real > _vy_fit_acoeffs
Definition: kh_instability_kinetic.h:86
std::vector< real > _vy_fit_xvec
Definition: kh_instability_kinetic.h:85
std::vector< real > _Ty_fit_xvec
Definition: kh_instability_kinetic.h:89
std::vector< real > _n_fit_xvec
Definition: kh_instability_kinetic.h:81
std::vector< real > _vy_fit_bcoeffs
Definition: kh_instability_kinetic.h:87
void bc_q(const real *q_in, const real *aux_in, const real *aux_out, const solverVariables_t *pFV, real *q_out) const override
Boundary Condition Application which sets the boundary condition on ghost nodes.
std::map< real, real > _n_fit_cache
Definition: kh_instability_kinetic.h:93
list apps
Definition: shock_tube.py:33
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