Tempus
Version of the Day
Time Integration
|
Base observer for StepperRK. More...
#include <Tempus_StepperRKObserverBase.hpp>
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... | |
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 35 of file Tempus_StepperRKObserverBase.hpp.
|
inlineprivatevirtual |
Execute application action for RK Stepper.
Implements Tempus::StepperRKAppAction< Scalar >.
Definition at line 50 of file Tempus_StepperRKObserverBase.hpp.
|
pure virtual |
Observe RK Stepper.
Implemented in Tempus_Unit_Test::StepperRKObserverTest, and Tempus::StepperRKObserverDefault< Scalar >.