WARPXM v1.10.0
Loading...
Searching...
No Matches
outflow.h
Go to the documentation of this file.
1#pragma once
2
3// Wm includes
6
7#include <memory>
8
10namespace wxm
11{
12namespace apps
13{
14namespace mhd
15{
16namespace bc
17{
35class Outflow : public WmApplication
36{
37public:
39 ~Outflow() override;
40
41 void setup(const WxCryptSet& wxc) override;
42
43 const std::vector<int>& getInputVariableIndexes(int flag) const override
44 {
45 return _mhd_fluid_idcs;
46 }
47
48 const std::vector<int>& getOutputVariableIndexes(int flag) const override
49 {
50 return _mhd_fluid_idcs;
51 }
52
53 // redefinition of bc
54 void bc_q(const real* q_in,
55 const real* aux_in,
56 const real* aux_out,
57 const solverVariables_t* pFV,
58 real* q_out) const override;
59
60protected:
61 std::unique_ptr<wxm::apps::mhd::AppSetupHelper>
64 std::vector<int> _mhd_fluid_idcs;
65
68
74};
75
76} // namespace bc
77} // namespace mhd
78} // namespace apps
79} // namespace wxm
80
82namespace wxm
83{
84namespace apps
85{
86namespace mhd
87{
88namespace bc
89{
98{
99public:
101
103
104 void setup(const WxCryptSet& wxc) override;
105
106 const std::vector<int>& getInputVariableIndexes(int flag) const override
107 {
109 }
110
111 const std::vector<int>& getAuxiliaryVariableIndexes(int flag) const override
112 {
113 return _mhd_fluid_idcs;
114 }
115
116 const std::vector<int>& getOutputVariableIndexes(int flag) const override
117 {
119 }
120
121 // redefinition of bc
122 void bc_q(const real* q_in,
123 const real* aux_in,
124 const real* aux_out,
125 const solverVariables_t* pFV,
126 real* q_out) const override;
127
128protected:
129 std::unique_ptr<wxm::apps::mhd::AppSetupHelper>
134
135 std::vector<int> _mhd_fluid_gradient_idcs;
136 std::vector<int> _mhd_fluid_idcs;
137
139
140private:
141 OutflowGradients& operator=(const OutflowGradients& var);
143};
144
145} // namespace bc
146} // namespace mhd
147} // namespace apps
148} // 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
Sets outflow BC for gradients.
Definition: outflow.h:98
real _gas_gamma
Definition: outflow.h:138
void bc_q(const real *q_in, const real *aux_in, const real *aux_out, const solverVariables_t *pFV, real *q_out) const override
Boundary Condition Application which sets the boundary condition on ghost nodes.
std::vector< int > _mhd_fluid_idcs
Definition: outflow.h:136
const std::vector< int > & getAuxiliaryVariableIndexes(int flag) const override
Definition: outflow.h:111
std::vector< int > _mhd_fluid_gradient_idcs
Definition: outflow.h:135
void setup(const WxCryptSet &wxc) override
std::unique_ptr< wxm::apps::mhd::AppSetupHelper > _setup_helper
Helper object that automates common setup routines.
Definition: outflow.h:130
real _min_pressure_floor
Definition: outflow.h:133
const std::vector< int > & getInputVariableIndexes(int flag) const override
Definition: outflow.h:106
const std::vector< int > & getOutputVariableIndexes(int flag) const override
Definition: outflow.h:116
real _min_density_floor
Definition: outflow.h:132
Sets outflow BC.
Definition: outflow.h:36
std::vector< int > _mhd_fluid_idcs
Definition: outflow.h:64
const std::vector< int > & getInputVariableIndexes(int flag) const override
Definition: outflow.h:43
std::unique_ptr< wxm::apps::mhd::AppSetupHelper > _setup_helper
Helper object that automates common setup routines.
Definition: outflow.h:62
real _nout
Definition: outflow.h:72
real _min_density_floor
Definition: outflow.h:66
real _Zi
Definition: outflow.h:71
real _min_pressure_floor
Definition: outflow.h:67
void bc_q(const real *q_in, const real *aux_in, const real *aux_out, const solverVariables_t *pFV, real *q_out) const override
Boundary Condition Application which sets the boundary condition on ghost nodes.
real _Ai
Definition: outflow.h:70
real _Tout
Definition: outflow.h:73
real _gas_gamma
Definition: outflow.h:69
void setup(const WxCryptSet &wxc) override
const std::vector< int > & getOutputVariableIndexes(int flag) const override
Definition: outflow.h:48
list apps
Definition: shock_tube.py:33
warpy mhd
Definition: mhd_shock.py:32
bc
Definition: advection2d_conservation.py:32
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