Tempus  Version of the Day
Time Integration
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Member Functions | List of all members
Tempus::StepperRKObserverBase< Scalar > Class Template Referenceabstract

Base observer for StepperRK. More...

#include <Tempus_StepperRKObserverBase.hpp>

Inheritance diagram for Tempus::StepperRKObserverBase< Scalar >:
Tempus::StepperRKAppAction< Scalar > Tempus::StepperRKObserverDefault< Scalar >

Public Member Functions

virtual void observe (Teuchos::RCP< const SolutionHistory< Scalar > >, Teuchos::RCP< const StepperRKBase< Scalar > >, const typename StepperRKAppAction< Scalar >::ACTION_LOCATION actLoc)=0
 Observe RK Stepper. More...
 
- Public Member Functions inherited from Tempus::StepperRKAppAction< Scalar >
 StepperRKAppAction ()
 Constructor. More...
 
virtual ~StepperRKAppAction ()
 Destructor. More...
 

Private Member Functions

void execute (Teuchos::RCP< SolutionHistory< Scalar > > sh, Teuchos::RCP< StepperRKBase< Scalar > > stepper, const typename StepperRKAppAction< Scalar >::ACTION_LOCATION actLoc)
 Execute application action for RK Stepper. More...
 

Additional Inherited Members

- Public Types inherited from Tempus::StepperRKAppAction< Scalar >
enum  ACTION_LOCATION {
  BEGIN_STEP, BEGIN_STAGE, BEFORE_SOLVE, AFTER_SOLVE,
  BEFORE_EXPLICIT_EVAL, END_STAGE, END_STEP
}
 Indicates the location of application action (see algorithm). More...
 

Detailed Description

template<class Scalar>
class Tempus::StepperRKObserverBase< Scalar >

Base observer for StepperRK.

This class provides a means to observe values (e.g., solution variables through SolutionHistory, and stepper member data through the Stepper), and cannot modify them.

Users deriving from this class can observer a lot of data, and it is expected that users will NOT modify any of that data. If the user wishes to modify the solution and/or stepper data during the Stepper::takeStep, they should use the Modifier class (with care!).

The locations of the RK AppActions (StepperRKAppAction::ACTION_LOCATION) in takeStep are documented in each of the RK Algorithm sections: StepperExplicitRK, StepperDIRK and StepperIMEX_RK.

Definition at line 34 of file Tempus_StepperRKObserverBase.hpp.

Member Function Documentation

template<class Scalar>
void Tempus::StepperRKObserverBase< Scalar >::execute ( Teuchos::RCP< SolutionHistory< Scalar > >  sh,
Teuchos::RCP< StepperRKBase< Scalar > >  stepper,
const typename StepperRKAppAction< Scalar >::ACTION_LOCATION  actLoc 
)
inlineprivatevirtual

Execute application action for RK Stepper.

Implements Tempus::StepperRKAppAction< Scalar >.

Definition at line 47 of file Tempus_StepperRKObserverBase.hpp.

template<class Scalar>
virtual void Tempus::StepperRKObserverBase< Scalar >::observe ( Teuchos::RCP< const SolutionHistory< Scalar > >  ,
Teuchos::RCP< const StepperRKBase< Scalar > >  ,
const typename StepperRKAppAction< Scalar >::ACTION_LOCATION  actLoc 
)
pure virtual

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