WARPXM v1.10.0
Loading...
Searching...
No Matches
pulse.h
Go to the documentation of this file.
1#ifndef WXM_APPS_PULSE_BC_H
2#define WXM_APPS_PULSE_BC_H
3/*
4Implements a pulse BC, with start/end times, and pulse ampitude.
5A. S. Richardson, 2022.12.09
6*/
7
8// Wm includes
10
11namespace wxm
12{
13namespace apps
14{
15namespace bc
16{
17class Pulse : public WmApplication
18{
19public:
21
22 ~Pulse() override;
23
24 void setup(const WxCryptSet& wxc) override;
25
26 const std::vector<int>& getOutputVariableIndexes(int flag) const override
27 {
28 return _variables;
29 }
30 const std::vector<int>& getInputVariableIndexes(int flag) const override
31 {
32 return _variables;
33 }
34
35 // redefinition of bc
36 void bc_q(const real* q_in,
37 const real* aux_in,
38 const real* aux_out,
39 const solverVariables_t* pFV,
40 real* q_out) const override;
41
42protected:
43 std::vector<int> _variables;
47
48private:
49 Pulse& operator=(const Pulse& var) = delete;
50 Pulse(const Pulse& var) = delete;
51};
52} // namespace bc
53} // namespace apps
54} // namespace wxm
55
56#endif // WXM_APPS_PULSE_BC_H
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: pulse.h:18
real _start_time
Definition: pulse.h:45
real _pulse_amplitude
Definition: pulse.h:44
std::vector< int > _variables
Definition: pulse.h:43
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 _end_time
Definition: pulse.h:46
const std::vector< int > & getOutputVariableIndexes(int flag) const override
Definition: pulse.h:26
void setup(const WxCryptSet &wxc) override
const std::vector< int > & getInputVariableIndexes(int flag) const override
Definition: pulse.h:30
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