WARPXM v1.10.0
Loading...
Searching...
No Matches
time_stepper_base.h
Go to the documentation of this file.
1#ifndef WXM_DT_BASE_H
2#define WXM_DT_BASE_H
3
6
7namespace wxm
8{
9namespace dt_calc
10{
12{
13public:
14 time_stepper_base(const WmConstOpaquePtr& parent_solver) : WmHostAction(parent_solver)
15 {
16 }
17
19
20 void setup(const WxCryptSet& wxc) override;
21
22 bool needsDomain() const override
23 {
24 return false;
25 }
26
31 {
32 return WxStepperStatus{};
33 }
34
38 void typeCheck() override
39 {
40 }
41
42 virtual bool allow_retry() const
43 {
44 return true;
45 }
46
59 virtual TimestepDecision test_dt(const WxStepperStatus& status) = 0;
60};
61} // namespace dt_calc
62} // namespace wxm
63
64#endif
Encapsulates information necessary to communicate and explain a decision about what timestep should b...
Definition: timestep_decision.h:16
Opaque Pointer object that carries the referenced data type, but does not expose this payload type as...
Definition: wmopaqueptr.h:81
The WmHostAction class is a base class for sub-solvers in the WARPXM system.
Definition: wmhostaction.h:35
WxCryptSet extends WxCrypt by providing, in addition to name-value pairs, an set of named WxCryptSets...
Definition: wxcryptset.h:35
Represents important parameters for the efficacy of a completing simulation step.
Definition: wxstepperstatus.h:19
Definition: time_stepper_base.h:12
time_stepper_base(const WmConstOpaquePtr &parent_solver)
Definition: time_stepper_base.h:14
bool needsDomain() const override
Return true if this updater needs a domain to work on.
Definition: time_stepper_base.h:22
virtual TimestepDecision test_dt(const WxStepperStatus &status)=0
Test whether the provided step status is acceptable, and recommend a timestep to take.
void typeCheck() override
not used, just here to implement WmHostAction interface
Definition: time_stepper_base.h:38
void setup(const WxCryptSet &wxc) override
Setup object using supplied crypset.
WxStepperStatus step() override
not used, just here to have the WxStepper interface
Definition: time_stepper_base.h:30
virtual bool allow_retry() const
Definition: time_stepper_base.h:42
real init_dt
Definition: time_stepper_base.h:18
str dt_calc
Definition: diffusion2d.py:37
Base namespace for everything not included in the global namespace.
Definition: field_source.h:8
#define real
Definition: wmoclunstructuredreconstruction.h:11