Tempus  Version of the Day
Time Integration
Tempus::StepperOperatorSplitObserver< Scalar > Class Template Reference

StepperOperatorSplitObserver class for StepperOperatorSplit. More...

#include <Tempus_StepperOperatorSplitObserver.hpp>

Inheritance diagram for Tempus::StepperOperatorSplitObserver< Scalar >:
Tempus::StepperObserver< Scalar >

Public Member Functions

 StepperOperatorSplitObserver ()
 Constructor. More...
 
virtual ~StepperOperatorSplitObserver ()
 Destructor. More...
 
virtual void observeBeginTakeStep (Teuchos::RCP< SolutionHistory< Scalar > > sh, Stepper< Scalar > &stepper)
 Observe Stepper at beginning of takeStep. More...
 
virtual void observeBeforeStepper (int index, Teuchos::RCP< SolutionHistory< Scalar > > sh, StepperOperatorSplit< Scalar > &stepperOS)
 Observe Stepper before index subStepper->takeStep() More...
 
virtual void observeAfterStepper (int index, Teuchos::RCP< SolutionHistory< Scalar > > sh, StepperOperatorSplit< Scalar > &stepperOS)
 Observe Stepper after index subStepper->takeStep() More...
 
virtual void observeEndTakeStep (Teuchos::RCP< SolutionHistory< Scalar > > sh, Stepper< Scalar > &stepperOS)
 Observe Stepper at end of takeStep. More...
 

Detailed Description

template<class Scalar>
class Tempus::StepperOperatorSplitObserver< Scalar >

StepperOperatorSplitObserver class for StepperOperatorSplit.

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

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

Definition at line 35 of file Tempus_StepperOperatorSplitObserver.hpp.

Constructor & Destructor Documentation

◆ StepperOperatorSplitObserver()

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

Constructor.

Definition at line 41 of file Tempus_StepperOperatorSplitObserver.hpp.

◆ ~StepperOperatorSplitObserver()

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

Destructor.

Definition at line 44 of file Tempus_StepperOperatorSplitObserver.hpp.

Member Function Documentation

◆ observeAfterStepper()

template<class Scalar >
virtual void Tempus::StepperOperatorSplitObserver< Scalar >::observeAfterStepper ( int  index,
Teuchos::RCP< SolutionHistory< Scalar > >  sh,
StepperOperatorSplit< Scalar > &  stepperOS 
)
inlinevirtual

Observe Stepper after index subStepper->takeStep()

Definition at line 57 of file Tempus_StepperOperatorSplitObserver.hpp.

◆ observeBeforeStepper()

template<class Scalar >
virtual void Tempus::StepperOperatorSplitObserver< Scalar >::observeBeforeStepper ( int  index,
Teuchos::RCP< SolutionHistory< Scalar > >  sh,
StepperOperatorSplit< Scalar > &  stepperOS 
)
inlinevirtual

Observe Stepper before index subStepper->takeStep()

Definition at line 52 of file Tempus_StepperOperatorSplitObserver.hpp.

◆ observeBeginTakeStep()

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

Observe Stepper at beginning of takeStep.

Implements Tempus::StepperObserver< Scalar >.

Definition at line 47 of file Tempus_StepperOperatorSplitObserver.hpp.

◆ observeEndTakeStep()

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

Observe Stepper at end of takeStep.

Implements Tempus::StepperObserver< Scalar >.

Definition at line 62 of file Tempus_StepperOperatorSplitObserver.hpp.


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