Tempus  Version of the Day
Time Integration
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Tempus::StepperObserver< Scalar > Class Template Referenceabstract

StepperObserver class for Stepper class. More...

#include <Tempus_StepperObserver.hpp>

Inheritance diagram for Tempus::StepperObserver< Scalar >:
Tempus::StepperBackwardEulerObserver< Scalar > Tempus::StepperBDF2Observer< Scalar > Tempus::StepperForwardEulerObserver< Scalar > Tempus::StepperLeapfrogObserver< Scalar > Tempus::StepperObserverBasic< Scalar > Tempus::StepperObserverComposite< Scalar > Tempus::StepperOperatorSplitObserver< Scalar > Tempus::StepperRKObserver< Scalar > Tempus::StepperSubcyclingObserver< Scalar > Tempus::StepperTrapezoidalObserver< Scalar >

Public Member Functions

virtual void observeBeginTakeStep (Teuchos::RCP< SolutionHistory< Scalar > > sh, Stepper< Scalar > &stepper)=0
 Observe Stepper at beginning of takeStep. More...
 
virtual void observeEndTakeStep (Teuchos::RCP< SolutionHistory< Scalar > > sh, Stepper< Scalar > &stepper)=0
 Observe Stepper at end of takeStep. More...
 

Detailed Description

template<class Scalar>
class Tempus::StepperObserver< Scalar >

StepperObserver class for Stepper class.

This is a means for application developers to perform tasks during the time steps, e.g.,

  • Compute specific quantities
  • Output information
  • "Massage" the working solution state
  • ...

Design Considerations

  • This base class only requires two functions, observeBeginTakeStep() and observeEndTakeStep() as these are the only ones that all Steppers have in common.
  • StepperObserver is not stateless! Developers may touch the solution state! Developers need to be careful not to break the restart (checkpoint) capability.

Definition at line 38 of file Tempus_StepperObserver.hpp.

Member Function Documentation


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