WARPXM v1.10.0
Loading...
Searching...
No Matches
intraspecies_collisions_terms.h
Go to the documentation of this file.
1#pragma once
2
3// Wm includes
6
7// std includes
8#include <memory>
9
10namespace wxm
11{
12namespace apps
13{
14namespace mhd_two_temperature
15{
16namespace viscousmhd
17{
29{
30public:
32
34
35 void setup(const WxCryptSet& wxc) override;
36
37 const std::vector<int>& getInputVariableIndexes(int flag) const override
38 {
39 return q_indexes_;
40 }
41
42 const std::vector<int>& getAuxiliaryVariableIndexes(int flag) const override
43 {
44 return grad_q_indexes_;
45 }
46
47 const std::vector<int>& getOutputVariableIndexes(int flag) const override
48 {
49 return q_indexes_;
50 }
51
54 const real* q_r,
55 const real* aux_l,
56 const real* aux_r,
57 const solverVariables_t* pFV,
58 real* numericalFlux) const override;
59
61 const real* aux,
62 const solverVariables_t* pSV,
63 std::vector<std::vector<real>>& internalFlux) const override;
64
65protected:
68 const real* q_r,
69 const real* aux_l,
70 const real* aux_r,
71 const solverVariables_t* pFV,
72 real* numericalFlux) const;
73
75 const real* q_r,
76 const real* aux_l,
77 const real* aux_r,
78 const solverVariables_t* pFV,
79 real* numericalFlux) const;
80
82 std::unique_ptr<wxm::apps::mhd_two_temperature::AppSetupHelper> setup_helper_;
83
86
89
92
97
102
107
109
110 std::string gradient_method_;
111
115 int ir_, ith_, iz_;
116
117 std::vector<int> q_indexes_;
118 std::vector<int> grad_q_indexes_;
119
124 mutable std::vector<std::vector<real>> flux_tensor_;
125
126private:
129};
130
131} // namespace viscousmhd
132} // namespace mhd_two_temperature
133} // namespace apps
134} // 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 used implement intraspecies collisions for the Two-Temperature MHD model.
Definition: intraspecies_collisions_terms.h:29
real const_ion_k_
Constant thermal conductivity coefficient (if absent, physical value is computed)
Definition: intraspecies_collisions_terms.h:100
int ith_
Definition: intraspecies_collisions_terms.h:115
std::vector< int > q_indexes_
Definition: intraspecies_collisions_terms.h:117
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
std::vector< std::vector< real > > flux_tensor_
Flux tensor is used to calculate left and right fluxes for numerical flux mutable because this will c...
Definition: intraspecies_collisions_terms.h:124
real const_electron_k_
Definition: intraspecies_collisions_terms.h:101
int radial_index_
r, theta, and z indices
Definition: intraspecies_collisions_terms.h:114
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
specific calls
std::string coordinate_system_
Definition: intraspecies_collisions_terms.h:112
real gas_gamma_
Adiabatic Index.
Definition: intraspecies_collisions_terms.h:85
real min_pressure_floor_
Pressure floor.
Definition: intraspecies_collisions_terms.h:106
const std::vector< int > & getOutputVariableIndexes(int flag) const override
Definition: intraspecies_collisions_terms.h:47
real Zi_
Ion charge of species.
Definition: intraspecies_collisions_terms.h:88
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
redefinition of fluxes from parent
real internal_flux(const real *q, const real *aux, const solverVariables_t *pSV, std::vector< std::vector< real > > &internalFlux) const override
std::vector< int > grad_q_indexes_
Definition: intraspecies_collisions_terms.h:118
const std::vector< int > & getAuxiliaryVariableIndexes(int flag) const override
Definition: intraspecies_collisions_terms.h:42
const std::vector< int > & getInputVariableIndexes(int flag) const override
Definition: intraspecies_collisions_terms.h:37
real min_density_floor_
Density floor.
Definition: intraspecies_collisions_terms.h:104
real cfl_diff_
Definition: intraspecies_collisions_terms.h:108
real Ai_
Mass of ion species.
Definition: intraspecies_collisions_terms.h:91
int iz_
Definition: intraspecies_collisions_terms.h:115
real const_ion_mu_
Constant viscosity coefficient on ions.
Definition: intraspecies_collisions_terms.h:96
std::string gradient_method_
Definition: intraspecies_collisions_terms.h:110
std::unique_ptr< wxm::apps::mhd_two_temperature::AppSetupHelper > setup_helper_
Helper object that automates common setup routines.
Definition: intraspecies_collisions_terms.h:82
int ir_
Definition: intraspecies_collisions_terms.h:115
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