WARPXM v1.10.0
Loading...
Searching...
No Matches
cyl_source.h
Go to the documentation of this file.
1#pragma once
2
3// Wm includes
5
6// STL includes
7#include <memory>
8
9namespace wxm
10{
11namespace apps
12{
13namespace rmhd
14{
39{
40public:
42
44
45 void setup(const WxCryptSet& wxc) override;
46
47 const std::vector<int>& getInputVariableIndexes(int flag) const override
48 {
49 return _input_variables;
50 }
51
52 const std::vector<int>& getAuxiliaryVariableIndexes(int flag) const override
53 {
54 return _aux_variables;
55 }
56
57 const std::vector<int>& getOutputVariableIndexes(int flag) const override
58 {
59 return _input_variables;
60 }
61
62 real source(const real* q,
63 const real* aux,
64 const elementGeometry_t* pEG,
65 real* source) const override;
66
67protected:
76 int _ir, _ith, _iz; // r, theta, and z indices
77
84 std::string _resistivity_type;
85
88
89 std::vector<int> _input_variables;
90 std::vector<int> _aux_variables;
91
92 // pointer to subapplications and boolean
93 std::unique_ptr<WmApplication> _floor_app;
95
96private:
97 CylSource& operator=(const CylSource& var) = delete;
98 CylSource(const CylSource& var) = delete;
99};
100} // namespace rmhd
101} // namespace apps
102} // 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
Implements the source terms in the resistitive diffusion terms that are added to Ideal MHD to produce...
Definition: cyl_source.h:39
void setup(const WxCryptSet &wxc) override
real _constant_resistivity_eta
Definition: cyl_source.h:78
real _Zi
Definition: cyl_source.h:73
const std::vector< int > & getInputVariableIndexes(int flag) const override
Definition: cyl_source.h:47
real _gas_gamma
Definition: cyl_source.h:68
const std::vector< int > & getAuxiliaryVariableIndexes(int flag) const override
Definition: cyl_source.h:52
bool _const_resisitivity
Definition: cyl_source.h:79
real _max_eta
Definition: cyl_source.h:82
int _iz
Definition: cyl_source.h:76
real source(const real *q, const real *aux, const elementGeometry_t *pEG, real *source) const override
bool _has_floor_app
Definition: cyl_source.h:94
real _eta_vac
Definition: cyl_source.h:87
real _nu_p_norm
Definition: cyl_source.h:70
std::string _resistivity_type
Definition: cyl_source.h:84
real _Ai
Definition: cyl_source.h:72
std::vector< int > _input_variables
Definition: cyl_source.h:89
const std::vector< int > & getOutputVariableIndexes(int flag) const override
Definition: cyl_source.h:57
std::unique_ptr< WmApplication > _floor_app
Definition: cyl_source.h:93
int _ir
Definition: cyl_source.h:76
int _radial_index
Definition: cyl_source.h:75
real _min_eta
Definition: cyl_source.h:83
real _omega_p_norm
Definition: cyl_source.h:71
std::vector< int > _aux_variables
Definition: cyl_source.h:90
real _n_vac
Definition: cyl_source.h:86
real _min_density_floor
Definition: cyl_source.h:80
real _min_pressure_floor
Definition: cyl_source.h:81
int _ith
Definition: cyl_source.h:76
real _skin_depth_norm
Definition: cyl_source.h:69
real _lnlam
Definition: cyl_source.h:74
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