![]() |
ASPECT
|
Public Member Functions | |
virtual | ~Interface ()=default |
virtual void | initialize () |
virtual bool | execute ()=0 |
virtual double | check_for_last_time_step (const double time_step) const |
virtual void | parse_parameters (ParameterHandler &prm) |
Static Public Member Functions | |
static void | declare_parameters (ParameterHandler &prm) |
This class declares the public interface of termination criteria plugins. These plugins must implement a function that can be called each time step to determine if specific criteria have been met that mean the simulation should be ended gracefully.
Access to the data of the simulator is granted by the protected
member functions of the SimulatorAccess class, i.e., classes implementing this interface will in general want to derive from both this Interface class as well as from the SimulatorAccess class if they need to find out about the state of the simulation.
Definition at line 65 of file interface.h.
|
virtualdefault |
Destructor. Does nothing but is virtual so that derived classes' destructors are also virtual.
|
virtual |
Initialization function. This function is called once at the beginning of the program after parse_parameters is run and after the SimulatorAccess (if applicable) is initialized.
|
pure virtual |
Execute evaluation of the termination criterion.
true
for a given plugin to record that the plugin wants to terminate the simulation, even if the other processors return false. Implemented in aspect::TerminationCriteria::EndTime< dim >, aspect::TerminationCriteria::EndWalltime< dim >, aspect::TerminationCriteria::UserRequest< dim >, aspect::TerminationCriteria::SteadyHeatFlux< dim >, aspect::TerminationCriteria::SteadyRMSVelocity< dim >, aspect::TerminationCriteria::EndStep< dim >, and aspect::TerminationCriteria::SteadyTemperature< dim >.
|
virtual |
Check for last time step and if so reduce the time step to user specified end time
Reimplemented in aspect::TerminationCriteria::EndTime< dim >.
|
static |
Declare the parameters this class takes through input files. Derived classes should overload this function if they actually do take parameters; this class declares a fall-back function that does nothing, so that classes that do not take any parameters do not have to do anything at all.
This function is static (and needs to be static in derived classes) so that it can be called without creating actual objects (because declaring parameters happens before we read the input file and thus at a time when we don't even know yet which plugin objects we need).
|
virtual |
Read the parameters this class declares from the parameter file. The default implementation in this class does nothing, so that derived classes that do not need any parameters do not need to implement it.
Reimplemented in aspect::TerminationCriteria::EndTime< dim >, aspect::TerminationCriteria::EndWalltime< dim >, aspect::TerminationCriteria::UserRequest< dim >, aspect::TerminationCriteria::SteadyHeatFlux< dim >, aspect::TerminationCriteria::SteadyRMSVelocity< dim >, aspect::TerminationCriteria::EndStep< dim >, and aspect::TerminationCriteria::SteadyTemperature< dim >.