WARPXM v1.10.0
Loading...
Searching...
No Matches
kh_instability.h
Go to the documentation of this file.
1#ifndef wmapplication_functions_maxwell_kh_instability_h
2#define wmapplication_functions_maxwell_kh_instability_h
3
4// WARPXM includes
6
7namespace wxm
8{
9namespace apps
10{
11namespace functions
12{
13namespace maxwell
14{
22{
23public:
29
34 ~KH_Instability() override;
35
40 void setup(const WxCryptSet& wxc) override;
41
47 const std::vector<int>& getOutputVariableIndexes(int flag) const override
48 {
49 return _output_fields;
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_fields;
72
75 std::vector<real> _perturbation_center;
79
80private:
81 KH_Instability& operator=(const KH_Instability& var);
83};
84} // namespace maxwell
85} // namespace functions
86} // namespace apps
87} // namespace wxm
88
89#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
Initialization and boundary conditions for electromagnetic Rayleigh-Taylor and Kelvin-Helmholtz insta...
Definition: kh_instability.h:22
const std::vector< int > & getOutputVariableIndexes(int flag) const override
Grab output variable indices.
Definition: kh_instability.h:47
void evaluate_function(const real *q, const real *aux, const solverVariables_t *pSV, real *result) const override
Redefinition of the function evaluator.
std::vector< int > _output_fields
Definition: kh_instability.h:71
real _Bz_bottom
Definition: kh_instability.h:73
real _perturbation_wavelength
Definition: kh_instability.h:76
std::vector< real > _perturbation_center
Definition: kh_instability.h:75
real _Bz_top
Definition: kh_instability.h:74
void setup(const WxCryptSet &wxc) override
Setup.
real _perturbation_transition_width
Definition: kh_instability.h:78
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.
real _perturbation_amplitude
Definition: kh_instability.h:77
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