WARPXM v1.10.0
Loading...
Searching...
No Matches
weibel_custom.h
Go to the documentation of this file.
1#ifndef wmapplication_function_kinetics_weibel_custom_h
2#define wmapplication_function_kinetics_weibel_custom_h
3
4// WARPXM includes
6
7// STL includes
8#include <memory>
9
10namespace wxm
11{
12namespace apps
13{
14namespace functions
15{
16namespace kinetics
17{
25{
26public:
32
38
43 void setup(const WxCryptSet& wxc) override;
44
50 const std::vector<int>& getInputVariableIndexes(int flag) const override
51 {
52 return _distribution;
53 }
54
60 const std::vector<int>& getOutputVariableIndexes(int flag) const override
61 {
62 return _distribution;
63 }
64
72 void evaluate_function(const real* q,
73 const real* aux,
74 const solverVariables_t* pSV,
75 real* result) const override;
76
77protected:
78 std::unique_ptr<WmApplication> _general_maxwellian_two_stream;
79 std::vector<int> _distribution; // input and output variable
80
82
83private:
84 WeibelCustom& operator=(const WeibelCustom& var);
85 WeibelCustom(const WeibelCustom& var);
86};
87
88} // namespace kinetics
89} // namespace functions
90} // namespace apps
91} // namespace wxm
92
93#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
Calculates the difference between a fed-in IC and a General Maxwellian Two-Stream conditions,...
Definition: weibel_custom.h:25
const std::vector< int > & getOutputVariableIndexes(int flag) const override
Grab output variable indices.
Definition: weibel_custom.h:60
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 > _distribution
Definition: weibel_custom.h:79
std::unique_ptr< WmApplication > _general_maxwellian_two_stream
Definition: weibel_custom.h:78
const std::vector< int > & getInputVariableIndexes(int flag) const override
Grab input variable indices.
Definition: weibel_custom.h:50
void setup(const WxCryptSet &wxc) override
Setup.
real _perturbation_scaling
Definition: weibel_custom.h:81
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