ASPECT
Public Member Functions | List of all members
aspect::TimeStepping::Interface< dim > Class Template Referenceabstract
Inheritance diagram for aspect::TimeStepping::Interface< dim >:
Inheritance graph
[legend]

Public Member Functions

virtual double execute ()=0
 
virtual std::pair< Reaction, double > determine_reaction (const TimeStepInfo &info)
 
- Public Member Functions inherited from aspect::Plugins::InterfaceBase
virtual ~InterfaceBase ()=default
 
virtual void initialize ()
 
virtual void update ()
 
virtual void parse_parameters (ParameterHandler &prm)
 

Additional Inherited Members

- Static Public Member Functions inherited from aspect::Plugins::InterfaceBase
static void declare_parameters (ParameterHandler &prm)
 

Detailed Description

template<int dim>
class aspect::TimeStepping::Interface< dim >

A base class for parameterizations of the time stepping models.

Definition at line 92 of file interface.h.

Member Function Documentation

§ execute()

template<int dim>
virtual double aspect::TimeStepping::Interface< dim >::execute ( )
pure virtual

Execute the logic of the plugin.

This is called after every time step to determine a) What to do (advance, repeat, etc.), see the Reaction enum. b) What timestep size to use.

Implemented in aspect::TimeStepping::RepeatOnNonlinearFail< dim >, aspect::TimeStepping::ConductionTimeStep< dim >, aspect::TimeStepping::ConvectionTimeStep< dim >, aspect::TimeStepping::Function< dim >, and aspect::TimeStepping::RepeatOnCutback< dim >.

§ determine_reaction()

template<int dim>
virtual std::pair<Reaction, double> aspect::TimeStepping::Interface< dim >::determine_reaction ( const TimeStepInfo info)
virtual

Determine what we want with the simulation to happen next: advance, repeat, refinement, etc.. The second return value is the time step size to take in case the plugin requests a repeated time step.

The argument info contains information like the step size that would be taken in this time step (determined as the minimum of the return value of execute() from all plugins).

The default implementation of this function will always advance to the next time step.

Reimplemented in aspect::TimeStepping::RepeatOnNonlinearFail< dim >, and aspect::TimeStepping::RepeatOnCutback< dim >.


The documentation for this class was generated from the following file: