WARPXM v1.10.0
Loading...
Searching...
No Matches
density_diffusion_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{
15
38{
39public:
41
43
44 void setup(const WxCryptSet& wxc) override;
45
50 {
51 LDG
52 };
53
58 {
60 NIMROD
61 };
62
68 const std::vector<int>& getInputVariableIndexes(int flag) const override
69 {
70 return _input_variables;
71 }
72
78 const std::vector<int>& getAuxiliaryVariableIndexes(int flag) const override
79 {
80 return _aux_variables;
81 }
82
88 const std::vector<int>& getOutputVariableIndexes(int flag) const override
89 {
90 return _input_variables;
91 }
92
101 real source(const real* q,
102 const real* aux,
103 const elementGeometry_t* pEG,
104 real* source) const override;
105
106protected:
110 std::vector<int>
112 std::vector<int>
118 int _ir;
120 std::unique_ptr<WmApplication> _floor_app;
123private:
124 DensityDiffusionCylSource& operator=(const DensityDiffusionCylSource& var) = delete;
126};
127} // namespace rmhd
128} // namespace apps
129} // 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
Cylindrical source for density diffusion in the MHD model.
Definition: density_diffusion_cyl_source.h:38
DDiffType
Available density diffusion types.
Definition: density_diffusion_cyl_source.h:58
@ BASIC
Definition: density_diffusion_cyl_source.h:59
@ NIMROD
Definition: density_diffusion_cyl_source.h:60
std::vector< int > _aux_variables
Vector of MHD fluid gradient variable indices.
Definition: density_diffusion_cyl_source.h:113
GradientMethod
Available gradient methods.
Definition: density_diffusion_cyl_source.h:50
@ LDG
Definition: density_diffusion_cyl_source.h:51
const std::vector< int > & getInputVariableIndexes(int flag) const override
Grab input variable indices.
Definition: density_diffusion_cyl_source.h:68
real source(const real *q, const real *aux, const elementGeometry_t *pEG, real *source) const override
Redefinition of the source function.
int _ir
Index of radial dimension.
Definition: density_diffusion_cyl_source.h:118
const std::vector< int > & getOutputVariableIndexes(int flag) const override
Grab output variable indices.
Definition: density_diffusion_cyl_source.h:88
real _ddiff
Density diffusion coefficient.
Definition: density_diffusion_cyl_source.h:115
std::vector< int > _input_variables
Vector of MHD fluid variable indices.
Definition: density_diffusion_cyl_source.h:111
DDiffType _ddiff_type
Density diffusion type.
Definition: density_diffusion_cyl_source.h:108
bool _has_floor_app
Boolean for existance of floor sub app.
Definition: density_diffusion_cyl_source.h:121
std::unique_ptr< WmApplication > _floor_app
Pointer to floor subapplications.
Definition: density_diffusion_cyl_source.h:120
void setup(const WxCryptSet &wxc) override
const std::vector< int > & getAuxiliaryVariableIndexes(int flag) const override
Grab auxiliary variable indices.
Definition: density_diffusion_cyl_source.h:78
real _ddiff_limit
Density diffusion coefficient limit for Nimrod method.
Definition: density_diffusion_cyl_source.h:116
GradientMethod _gradient_method
Gradient method chosen for app.
Definition: density_diffusion_cyl_source.h:107
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