WARPXM v1.10.0
Loading...
Searching...
No Matches
intraspecies_collisions.h
Go to the documentation of this file.
1#pragma once
2
3// wxm includes
5#include "app_setup_helper.h"
6
7// STL includes
8#include <memory>
9
10namespace wxm
11{
12namespace apps
13{
14namespace five_moment
15{
40{
41public:
43
45
46 void setup(const WxCryptSet& wxc) override;
47
48 const std::vector<int>& getInputVariableIndexes(int flag) const override
49 {
50 return _input_variables;
51 }
52 const std::vector<int>& getAuxiliaryVariableIndexes(int flag) const override
53 {
54 return _aux_variables;
55 }
56 const std::vector<int>& getOutputVariableIndexes(int flag) const override
57 {
58 return _output_variables;
59 }
60
61 // redefinition of fluxes from parent
63 const real* q_r,
64 const real* aux_l,
65 const real* aux_r,
66 const solverVariables_t* pFV,
67 real* numericalFlux) const override;
68
70 const real* aux,
71 const solverVariables_t* pSV,
72 std::vector<std::vector<real>>& internalFlux) const override;
73
74 // specific calls
76 const real* q_r,
77 const real* aux_l,
78 const real* aux_r,
79 const solverVariables_t* pFV,
80 real* numericalFlux) const;
81
83 const real* q_r,
84 const real* aux_l,
85 const real* aux_r,
86 const solverVariables_t* pFV,
87 real* numericalFlux) const;
88
89protected:
91 std::unique_ptr<AppSetupHelper> _setup_helper;
92
104 std::string _gradient_method;
110
114 int _ir;
115 int _ith;
116
117 std::vector<int> _input_variables;
118 std::vector<int> _aux_variables;
119 std::vector<int> _output_variables;
120
121private:
122 IntraspeciesCollisions& operator=(const IntraspeciesCollisions& var) = delete;
124};
125} // namespace five_moment
126} // namespace apps
127} // 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 Navier-Stokes style collisions.
Definition: intraspecies_collisions.h:40
real _collision_coefficient
Definition: intraspecies_collisions.h:100
const std::vector< int > & getOutputVariableIndexes(int flag) const override
Definition: intraspecies_collisions.h:56
void setup(const WxCryptSet &wxc) override
int _ith
Definition: intraspecies_collisions.h:115
real _mass
Definition: intraspecies_collisions.h:97
real _minimum_frequency
Definition: intraspecies_collisions.h:103
std::string _gradient_method
Definition: intraspecies_collisions.h:104
std::vector< int > _output_variables
Definition: intraspecies_collisions.h:119
const std::vector< int > & getInputVariableIndexes(int flag) const override
Definition: intraspecies_collisions.h:48
std::vector< int > _input_variables
Definition: intraspecies_collisions.h:117
real _coulomb_log
Definition: intraspecies_collisions.h:99
bool _is_cyl
Definition: intraspecies_collisions.h:113
bool _is_const_k
Definition: intraspecies_collisions.h:107
real _min_pressure
Minimum normalized pressure used in calculations.
Definition: intraspecies_collisions.h:94
real _diffusivity_max
Definition: intraspecies_collisions.h:102
real _charge
Definition: intraspecies_collisions.h:96
bool _is_const_mu
Definition: intraspecies_collisions.h:105
real numerical_flux_ldg(const real *q_l, const real *q_r, const real *aux_l, const real *aux_r, const solverVariables_t *pFV, real *numericalFlux) const
real _min_density
Minimum normalized mass density used in calculations.
Definition: intraspecies_collisions.h:93
real _cfl_diff
Definition: intraspecies_collisions.h:109
int _ir
Definition: intraspecies_collisions.h:114
real numerical_flux_ip(const real *q_l, const real *q_r, const real *aux_l, const real *aux_r, const solverVariables_t *pFV, real *numericalFlux) const
real _diffusivity_min
Definition: intraspecies_collisions.h:101
real internal_flux(const real *q, const real *aux, const solverVariables_t *pSV, std::vector< std::vector< real > > &internalFlux) const override
const std::vector< int > & getAuxiliaryVariableIndexes(int flag) const override
Definition: intraspecies_collisions.h:52
real _gas_gamma
Adiabatic index.
Definition: intraspecies_collisions.h:95
real _nuptau
Definition: intraspecies_collisions.h:98
real _const_mu
Definition: intraspecies_collisions.h:106
bool _is_neutral
Definition: intraspecies_collisions.h:111
real numerical_flux(const real *q_l, const real *q_r, const real *aux_l, const real *aux_r, const solverVariables_t *pFV, real *numericalFlux) const override
std::vector< int > _aux_variables
Definition: intraspecies_collisions.h:118
real _const_k
Definition: intraspecies_collisions.h:108
std::unique_ptr< AppSetupHelper > _setup_helper
Helper object that automates common setup routines.
Definition: intraspecies_collisions.h:91
int _radial_index
Definition: intraspecies_collisions.h:112
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