WARPXM v1.10.0
Loading...
Searching...
No Matches
ein_bc.h
Go to the documentation of this file.
1#pragma once
2
3// Wm includes
6
7// STL includes
8#include <memory>
9
10namespace wxm
11{
12namespace apps
13{
14namespace five_moment
15{
16namespace bc
17{
31class EinBc : public WmApplication
32{
33public:
35
36 ~EinBc() override;
37
38 void setup(const WxCryptSet& wxc) override;
39
40 const std::vector<int>& getInputVariableIndexes(int flag) const override
41 {
42 return _input_variables;
43 }
44 const std::vector<int>& getOutputVariableIndexes(int flag) const override
45 {
46 return _output_variables;
47 }
48
49 // redefinition of bc
50 void bc_q(const real* q_in,
51 const real* aux_in,
52 const real* aux_out,
53 const solverVariables_t* pFV,
54 real* q_out) const override;
55
56protected:
58 std::unique_ptr<AppSetupHelper> _setup_helper;
59
66 std::vector<real> _params;
67 std::vector<int> _input_variables;
68 std::vector<int> _output_variables;
69
70private:
71 EinBc& operator=(const EinBc& var) = delete;
72 EinBc(const EinBc& var) = delete;
73};
74} // namespace bc
75} // namespace five_moment
76} // namespace apps
77} // 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
A collection of development BCs for electron-ion-neutral model.
Definition: ein_bc.h:32
void setup(const WxCryptSet &wxc) override
real _min_pressure
Minimum normalized pressure used in calculations.
Definition: ein_bc.h:61
real _min_density
Minimum normalized mass density used in calculations.
Definition: ein_bc.h:60
std::vector< int > _input_variables
Definition: ein_bc.h:67
const std::vector< int > & getOutputVariableIndexes(int flag) const override
Definition: ein_bc.h:44
const std::vector< int > & getInputVariableIndexes(int flag) const override
Definition: ein_bc.h:40
int _var_type
Definition: ein_bc.h:65
std::unique_ptr< AppSetupHelper > _setup_helper
Helper object that automates common setup routines.
Definition: ein_bc.h:58
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.
int _bc_type
Definition: ein_bc.h:64
real _gas_gamma
Adiabatic index.
Definition: ein_bc.h:62
std::vector< int > _output_variables
Definition: ein_bc.h:68
std::vector< real > _params
Definition: ein_bc.h:66
list apps
Definition: shock_tube.py:33
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