WARPXM v1.10.0
Loading...
Searching...
No Matches
wmapplication_vlasov_ponderomotive_force.h
Go to the documentation of this file.
1#ifndef WMAPPLICATION_VLASOVPONDEROMOTIVEFORCE_H
2#define WMAPPLICATION_VLASOVPONDEROMOTIVEFORCE_H
3
4// General includes
6
8{
9public:
11
13
14 void setup(const WxCryptSet& wxc) override;
15
16 const std::vector<int>& getInputVariableIndexes(int flag) const override
17 {
18 return _inputVariables;
19 }
20 const std::vector<int>& getOutputVariableIndexes(int flag) const override
21 {
22 return _outputVariables;
23 }
24 const std::vector<int>& getAuxiliaryVariableIndexes(int flag) const override
25 {
26 return _auxVariables;
27 }
28
29 // redefinition of fluxes from parent
31 const real* q_r,
32 const real* aux_l,
33 const real* aux_r,
34 const solverVariables_t* pFV,
35 real* numericalFlux) const override;
37 const real* aux,
38 const solverVariables_t* pSV,
39 std::vector<std::vector<real>>& internalFlux) const override;
40
41protected:
45
47
48 std::vector<int> _inputVariables;
49 std::vector<int> _outputVariables;
50 std::vector<int> _auxVariables;
51
52 // left and right vectors for numerical flux calculation
53 // mutable because they are zero'd on each call
54 mutable std::vector<std::vector<real>> _flux_left;
55 mutable std::vector<std::vector<real>> _flux_right;
56
57private:
60};
61
62#endif // WMAPPLICATION_VLASOVPONDEROMOTIVEFORCE_H
Definition: wmapplication_vlasov_ponderomotive_force.h:8
real _n0
Definition: wmapplication_vlasov_ponderomotive_force.h:43
std::vector< int > _inputVariables
Definition: wmapplication_vlasov_ponderomotive_force.h:48
real _flux_factor
Definition: wmapplication_vlasov_ponderomotive_force.h:44
std::vector< std::vector< real > > _flux_left
Definition: wmapplication_vlasov_ponderomotive_force.h:54
std::vector< int > _outputVariables
Definition: wmapplication_vlasov_ponderomotive_force.h:49
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 > & getOutputVariableIndexes(int flag) const override
Definition: wmapplication_vlasov_ponderomotive_force.h:20
real _ometau
Definition: wmapplication_vlasov_ponderomotive_force.h:42
void setup(const WxCryptSet &wxc) override
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< std::vector< real > > _flux_right
Definition: wmapplication_vlasov_ponderomotive_force.h:55
std::vector< int > _auxVariables
Definition: wmapplication_vlasov_ponderomotive_force.h:50
const std::vector< int > & getInputVariableIndexes(int flag) const override
Definition: wmapplication_vlasov_ponderomotive_force.h:16
const std::vector< int > & getAuxiliaryVariableIndexes(int flag) const override
Definition: wmapplication_vlasov_ponderomotive_force.h:24
std::string _numerical_flux_type
Definition: wmapplication_vlasov_ponderomotive_force.h:46
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
Definition: wmapplication.h:38
#define real
Definition: wmoclunstructuredreconstruction.h:11