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

StepperRKObserver class for StepperRK. More...

#include <Tempus_StepperRKObserver.hpp>

Inheritance diagram for Tempus::StepperRKObserver< Scalar >:
Tempus::StepperObserver< Scalar > Tempus::StepperRKObserverComposite< Scalar > Tempus::StepperRKObserverLogging< Scalar >

Public Member Functions

 StepperRKObserver ()
 Constructor. More...
 
virtual ~StepperRKObserver ()
 Destructor. More...
 
virtual void observeBeginTakeStep (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &)
 1.) Observe Stepper at beginning of takeStep. More...
 
virtual void observeBeginStage (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &)
 2.) Observe Stepper at beginning of each stage. More...
 
virtual void observeBeforeImplicitExplicitly (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &)
 3.) Observe Stepper before Explicit evaluation of Implicit ODE ME (IMEX). More...
 
virtual void observeBeforeSolve (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &)
 4.) Observe Stepper before nonlinear solve (DIRK/IMEX). More...
 
virtual void observeAfterSolve (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &)
 5.) Observe Stepper after nonlinear solve (DIRK/IMEX). More...
 
virtual void observeBeforeExplicit (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &)
 6.) Observe Stepper before Explicit evaluation of Implicit ODE ME (IMEX). More...
 
virtual void observeEndStage (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &)
 7.) Observe Stepper at end of each stage. More...
 
virtual void observeEndTakeStep (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &)
 8.) Observe Stepper at end of takeStep. More...
 

Detailed Description

template<class Scalar>
class Tempus::StepperRKObserver< Scalar >

StepperRKObserver class for StepperRK.

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

  • StepperRKObserver is not stateless! Developers may touch the solution state! Developers need to be careful not to break the restart (checkpoint) capability.

Definition at line 36 of file Tempus_StepperRKObserver.hpp.

Constructor & Destructor Documentation

template<class Scalar >
Tempus::StepperRKObserver< Scalar >::StepperRKObserver ( )
inline

Constructor.

Definition at line 42 of file Tempus_StepperRKObserver.hpp.

template<class Scalar >
virtual Tempus::StepperRKObserver< Scalar >::~StepperRKObserver ( )
inlinevirtual

Destructor.

Definition at line 45 of file Tempus_StepperRKObserver.hpp.

Member Function Documentation

template<class Scalar >
virtual void Tempus::StepperRKObserver< Scalar >::observeAfterSolve ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
inlinevirtual

5.) Observe Stepper after nonlinear solve (DIRK/IMEX).

Reimplemented in Tempus::StepperRKObserverComposite< Scalar >, and Tempus::StepperRKObserverLogging< Scalar >.

Definition at line 68 of file Tempus_StepperRKObserver.hpp.

template<class Scalar >
virtual void Tempus::StepperRKObserver< Scalar >::observeBeforeExplicit ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
inlinevirtual

6.) Observe Stepper before Explicit evaluation of Implicit ODE ME (IMEX).

Reimplemented in Tempus::StepperRKObserverComposite< Scalar >, and Tempus::StepperRKObserverLogging< Scalar >.

Definition at line 73 of file Tempus_StepperRKObserver.hpp.

template<class Scalar >
virtual void Tempus::StepperRKObserver< Scalar >::observeBeforeImplicitExplicitly ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
inlinevirtual

3.) Observe Stepper before Explicit evaluation of Implicit ODE ME (IMEX).

Reimplemented in Tempus::StepperRKObserverComposite< Scalar >, and Tempus::StepperRKObserverLogging< Scalar >.

Definition at line 58 of file Tempus_StepperRKObserver.hpp.

template<class Scalar >
virtual void Tempus::StepperRKObserver< Scalar >::observeBeforeSolve ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
inlinevirtual

4.) Observe Stepper before nonlinear solve (DIRK/IMEX).

Reimplemented in Tempus::StepperRKObserverComposite< Scalar >, and Tempus::StepperRKObserverLogging< Scalar >.

Definition at line 63 of file Tempus_StepperRKObserver.hpp.

template<class Scalar >
virtual void Tempus::StepperRKObserver< Scalar >::observeBeginStage ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
inlinevirtual

2.) Observe Stepper at beginning of each stage.

Reimplemented in Tempus::StepperRKObserverComposite< Scalar >, and Tempus::StepperRKObserverLogging< Scalar >.

Definition at line 53 of file Tempus_StepperRKObserver.hpp.

template<class Scalar >
virtual void Tempus::StepperRKObserver< Scalar >::observeBeginTakeStep ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
inlinevirtual

1.) Observe Stepper at beginning of takeStep.

Implements Tempus::StepperObserver< Scalar >.

Reimplemented in Tempus::StepperRKObserverComposite< Scalar >, and Tempus::StepperRKObserverLogging< Scalar >.

Definition at line 48 of file Tempus_StepperRKObserver.hpp.

template<class Scalar >
virtual void Tempus::StepperRKObserver< Scalar >::observeEndStage ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
inlinevirtual

7.) Observe Stepper at end of each stage.

Reimplemented in Tempus::StepperRKObserverComposite< Scalar >, and Tempus::StepperRKObserverLogging< Scalar >.

Definition at line 78 of file Tempus_StepperRKObserver.hpp.

template<class Scalar >
virtual void Tempus::StepperRKObserver< Scalar >::observeEndTakeStep ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
inlinevirtual

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