WARPXM v1.10.0
Loading...
Searching...
No Matches
ohmic_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{
15
28{
29public:
31
32 ~ohmic_source_t() override;
33
34 void setup(const WxCryptSet& wxc) override;
35
36 const std::vector<int>& getInputVariableIndexes(int flag) const override
37 {
38 return _input_variables;
39 }
40
41 const std::vector<int>& getAuxiliaryVariableIndexes(int flag) const override
42 {
43 return _aux_variables;
44 }
45
46 const std::vector<int>& getOutputVariableIndexes(int flag) const override
47 {
48 return _input_variables;
49 }
50
51 real source(const real* q,
52 const real* aux,
53 const elementGeometry_t* pEG,
54 real* source) const override;
55
56protected:
64
71 std::string _resistivity_type;
72
76
77 std::string _coordinate_system;
79 int _ir, _ith, _iz; // r, theta, and z indices
80
81 std::vector<int> _input_variables;
82 std::vector<int> _aux_variables;
83
84 // pointer to subapplications and boolean
85 std::unique_ptr<WmApplication> _floor_app;
87
88private:
89 ohmic_source_t& operator=(const ohmic_source_t& var);
91};
92} // namespace rmhd
93} // namespace apps
94} // 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
class that calculates a source associated with reduced Ohmic heating
Definition: ohmic_source.h:28
int _ith
Definition: ohmic_source.h:79
real _n_vac
Definition: ohmic_source.h:74
real _gas_gamma
Definition: ohmic_source.h:57
std::string _coordinate_system
Definition: ohmic_source.h:77
bool _has_floor_app
Definition: ohmic_source.h:86
const std::vector< int > & getAuxiliaryVariableIndexes(int flag) const override
Definition: ohmic_source.h:41
real _lnlam
Definition: ohmic_source.h:63
std::vector< int > _input_variables
Definition: ohmic_source.h:81
real _omega_p_norm
Definition: ohmic_source.h:60
const std::vector< int > & getInputVariableIndexes(int flag) const override
Definition: ohmic_source.h:36
void setup(const WxCryptSet &wxc) override
real _Ai
Definition: ohmic_source.h:61
real _min_pressure_floor
Definition: ohmic_source.h:68
real _eta_vac
Definition: ohmic_source.h:75
real source(const real *q, const real *aux, const elementGeometry_t *pEG, real *source) const override
real _nu_p_norm
Definition: ohmic_source.h:59
real _constant_resistivity_eta
Definition: ohmic_source.h:65
real _max_eta
Definition: ohmic_source.h:69
real _min_density_floor
Definition: ohmic_source.h:67
real _ohmic_floor_density
Definition: ohmic_source.h:73
std::string _resistivity_type
Definition: ohmic_source.h:71
int _iz
Definition: ohmic_source.h:79
std::unique_ptr< WmApplication > _floor_app
Definition: ohmic_source.h:85
int _radial_index
Definition: ohmic_source.h:78
int _ir
Definition: ohmic_source.h:79
real _min_eta
Definition: ohmic_source.h:70
real _Zi
Definition: ohmic_source.h:62
std::vector< int > _aux_variables
Definition: ohmic_source.h:82
real _skin_depth_norm
Definition: ohmic_source.h:58
bool _const_resisitivity
Definition: ohmic_source.h:66
const std::vector< int > & getOutputVariableIndexes(int flag) const override
Definition: ohmic_source.h:46
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