9#ifndef Tempus_IntegratorObserver_hpp
10#define Tempus_IntegratorObserver_hpp
12#include "Tempus_config.hpp"
13#include "Tempus_TimeStepControl.hpp"
17 template<
typename Scalar>
class Integrator;
IntegratorObserver class for time integrators.
virtual void observeAfterTakeStep(const Integrator< Scalar > &integrator)=0
Observe after Stepper takes step.
virtual void observeAfterCheckTimeStep(const Integrator< Scalar > &integrator)=0
Observe after checking time step. Observer can still fail the time step here.
virtual ~IntegratorObserver()=default
default destructor
virtual void observeNextTimeStep(const Integrator< Scalar > &integrator)=0
virtual void observeStartTimeStep(const Integrator< Scalar > &integrator)=0
Observe the beginning of the time step loop.
virtual void observeBeforeTakeStep(const Integrator< Scalar > &integrator)=0
Observe before Stepper takes step.
virtual void observeStartIntegrator(const Integrator< Scalar > &integrator)=0
Observe the beginning of the time integrator.
virtual void observeEndTimeStep(const Integrator< Scalar > &integrator)=0
Observe the end of the time step loop.
virtual void observeEndIntegrator(const Integrator< Scalar > &integrator)=0
Observe the end of the time integrator.
Thyra Base interface for time integrators. Time integrators are designed to advance the solution from...