20 #ifndef GEOS_DATAREPOSITORY_EXECUTABLEGROUP_HPP_
21 #define GEOS_DATAREPOSITORY_EXECUTABLEGROUP_HPP_
31 class DomainPartition;
62 real64 const eventProgress,
87 real64 const eventProgress,
129 "DeterminesTimeStepSize",
130 "DoesNotDetermineTimeStepSize" );
#define GEOS_UNUSED_VAR(...)
Mark an unused variable and silence compiler warnings.
Partition of the decomposed physical domain. It also manages the connexion information to its neighbo...
TimesteppingBehavior getTimesteppingBehavior() const
Get the target's time step behavior.
virtual void cleanup(real64 const time_n, integer const cycleNumber, integer const eventCounter, real64 const eventProgress, DomainPartition &domain)
Called as the code exits the main run loop.
TimesteppingBehavior
Timestepping type.
@ DeterminesTimeStepSize
The group (say, the solver) does the timestepping.
@ DoesNotDetermineTimeStepSize
The event targetting this group does the timestepping.
virtual real64 getTimestepRequest(real64 const time)
Supplies the timestep request for this target to the event manager.
virtual bool execute(real64 const time_n, real64 const dt, integer const cycleNumber, integer const eventCounter, real64 const eventProgress, DomainPartition &domain)=0
Main extension point of executable targets.
virtual void signalToPrepareForExecution(real64 const time_n, real64 const dt, integer const cycle, DomainPartition &domain)
Inform the object that it expects to execute during the next timestep.
void setTimesteppingBehavior(TimesteppingBehavior const timesteppingBehavior)
Set the timestep behavior for a target.
Group()=delete
Deleted default constructor.
ENUM_STRINGS(LinearSolverParameters::SolverType, "direct", "cg", "gmres", "fgmres", "bicgstab", "preconditioner")
Declare strings associated with enumeration values.
double real64
64-bit floating point type.
std::int32_t integer
Signed integer type.