WARPXM v1.10.0
Loading...
Searching...
No Matches
divergence_error_calculation.h
Go to the documentation of this file.
1#pragma once
2
3// WARPXM includes
5
6namespace wxm
7{
8namespace apps
9{
10namespace functions
11{
12namespace maxwell
13{
14
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 _input_indices;
53 }
54
60 const std::vector<int>& getAuxiliaryVariableIndexes(int flag) const override
61 {
63 }
64
70 const std::vector<int>& getOutputVariableIndexes(int flag) const override
71 {
73 }
74
82 void evaluate_function(const real* q,
83 const real* aux,
84 const solverVariables_t* pSV,
85 real* result) const override;
86
87protected:
88 real cartesian_divergence(const real* field_gradients) const;
90 const real* field_gradients,
91 const solverVariables_t* pSV) const;
92
93 std::vector<int> _input_indices;
94 std::vector<int> _auxiliary_fluid_indices;
96
99
101 std::vector<real> _charges;
102 std::vector<real> _masses;
103 std::vector<real> _com;
104
106
109 int _ir, _ith, _iz; // r, theta, and z indices
110
111private:
112 DivergenceError& operator=(const DivergenceError& var);
114};
115
116} // namespace maxwell
117} // namespace functions
118} // namespace apps
119} // namespace wxm
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
Divergence Error Calculation This calculates the divergence error for diagnostic purposes THIS IS NOT...
Definition: divergence_error_calculation.h:25
real cylindrical_divergence(const real *fields, const real *field_gradients, const solverVariables_t *pSV) const
int _num_fluids
Definition: divergence_error_calculation.h:100
std::vector< real > _masses
Definition: divergence_error_calculation.h:102
const std::vector< int > & getAuxiliaryVariableIndexes(int flag) const override
Grab auxiliary variable indices.
Definition: divergence_error_calculation.h:60
void evaluate_function(const real *q, const real *aux, const solverVariables_t *pSV, real *result) const override
Redefinition of the function evaluator.
real _skin_depth_norm
Definition: divergence_error_calculation.h:98
std::vector< real > _charges
Definition: divergence_error_calculation.h:101
int _coordinate_system
Definition: divergence_error_calculation.h:107
std::vector< int > _auxiliary_fluid_indices
Definition: divergence_error_calculation.h:94
const std::vector< int > & getInputVariableIndexes(int flag) const override
Grab input variable indices.
Definition: divergence_error_calculation.h:50
int _radial_index
Definition: divergence_error_calculation.h:108
int _iz
Definition: divergence_error_calculation.h:109
std::vector< int > _output_divergence_error_indices
Definition: divergence_error_calculation.h:95
void setup(const WxCryptSet &wxc) override
Setup.
const std::vector< int > & getOutputVariableIndexes(int flag) const override
Grab output variable indices.
Definition: divergence_error_calculation.h:70
real _factor
Definition: divergence_error_calculation.h:105
std::vector< real > _com
Definition: divergence_error_calculation.h:103
int _ith
Definition: divergence_error_calculation.h:109
real _omega_p_tau
Definition: divergence_error_calculation.h:97
int _ir
Definition: divergence_error_calculation.h:109
real cartesian_divergence(const real *field_gradients) const
std::vector< int > _input_indices
Definition: divergence_error_calculation.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