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

This observer logs calls to observer functions. This observer simply logs and counts the calls to each of the observer functions. This is useful in monirtoring and debugging the time integration. More...

#include <Tempus_StepperRKObserverLogging_decl.hpp>

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

Public Member Functions

 StepperRKObserverLogging ()
 Constructor. More...
 
virtual ~StepperRKObserverLogging ()
 Destructor. More...
 
void resetLogCounters ()
 
Teuchos::RCP< const std::map
< std::string, int > > 
getCounters ()
 
Teuchos::RCP< const std::list
< std::string > > 
getOrder ()
 
Override StepperRKObserver basic methods
virtual void observeBeginTakeStep (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &) override
 1.) Observe Stepper at beginning of takeStep. More...
 
virtual void observeBeginStage (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &) override
 2.) Observe Stepper at beginning of each stage. More...
 
virtual void observeBeforeImplicitExplicitly (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &) override
 3.) Observe Stepper before Explicit evaluation of Implicit ODE ME (IMEX). More...
 
virtual void observeBeforeSolve (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &) override
 4.) Observe Stepper before nonlinear solve (DIRK/IMEX). More...
 
virtual void observeAfterSolve (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &) override
 5.) Observe Stepper after nonlinear solve (DIRK/IMEX). More...
 
virtual void observeBeforeExplicit (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &) override
 6.) Observe Stepper before Explicit evaluation of Implicit ODE ME (IMEX). More...
 
virtual void observeEndStage (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &) override
 7.) Observe Stepper at end of each stage. More...
 
virtual void observeEndTakeStep (Teuchos::RCP< SolutionHistory< Scalar > >, Stepper< Scalar > &) override
 8.) Observe Stepper at end of takeStep. More...
 
- Public Member Functions inherited from Tempus::StepperRKObserver< Scalar >
 StepperRKObserver ()
 Constructor. More...
 
virtual ~StepperRKObserver ()
 Destructor. More...
 

Public Attributes

String names logged in map

Use these strings to validate a call stack with this observer

const std::string nameObserveBeginTakeStep_
 
const std::string nameObserveBeginStage_
 
const std::string nameObserveBeforeImplicitExplicitly_
 
const std::string nameObserveBeforeSolve_
 
const std::string nameObserveAfterSolve_
 
const std::string nameObserveBeforeExplicit_
 
const std::string nameObserveEndStage_
 
const std::string nameObserveEndTakeStep_
 

Private Member Functions

void logCall (const std::string call) const
 Asserts next call on the stack is correct and removes from stack. More...
 

Private Attributes

Teuchos::RCP< std::map
< std::string, int > > 
counters_
 
Teuchos::RCP< std::list
< std::string > > 
order_
 

Detailed Description

template<class Scalar>
class Tempus::StepperRKObserverLogging< Scalar >

This observer logs calls to observer functions. This observer simply logs and counts the calls to each of the observer functions. This is useful in monirtoring and debugging the time integration.

Definition at line 23 of file Tempus_StepperRKObserverLogging_decl.hpp.

Constructor & Destructor Documentation

template<class Scalar >
Tempus::StepperRKObserverLogging< Scalar >::StepperRKObserverLogging ( )

Constructor.

Definition at line 18 of file Tempus_StepperRKObserverLogging_impl.hpp.

template<class Scalar >
Tempus::StepperRKObserverLogging< Scalar >::~StepperRKObserverLogging ( )
virtual

Destructor.

Definition at line 34 of file Tempus_StepperRKObserverLogging_impl.hpp.

Member Function Documentation

template<class Scalar >
Teuchos::RCP< const std::map< std::string, int > > Tempus::StepperRKObserverLogging< Scalar >::getCounters ( )

Definition at line 108 of file Tempus_StepperRKObserverLogging_impl.hpp.

template<class Scalar >
Teuchos::RCP< const std::list< std::string > > Tempus::StepperRKObserverLogging< Scalar >::getOrder ( )

Definition at line 113 of file Tempus_StepperRKObserverLogging_impl.hpp.

template<class Scalar >
void Tempus::StepperRKObserverLogging< Scalar >::logCall ( const std::string  call) const
private

Asserts next call on the stack is correct and removes from stack.

This is a const method so that it can be called from the derived StepperRKObserver methods that are const.

Definition at line 117 of file Tempus_StepperRKObserverLogging_impl.hpp.

template<class Scalar >
void Tempus::StepperRKObserverLogging< Scalar >::observeAfterSolve ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
overridevirtual

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

Reimplemented from Tempus::StepperRKObserver< Scalar >.

Definition at line 66 of file Tempus_StepperRKObserverLogging_impl.hpp.

template<class Scalar >
void Tempus::StepperRKObserverLogging< Scalar >::observeBeforeExplicit ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
overridevirtual

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

Reimplemented from Tempus::StepperRKObserver< Scalar >.

Definition at line 73 of file Tempus_StepperRKObserverLogging_impl.hpp.

template<class Scalar >
void Tempus::StepperRKObserverLogging< Scalar >::observeBeforeImplicitExplicitly ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
overridevirtual

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

Reimplemented from Tempus::StepperRKObserver< Scalar >.

Definition at line 52 of file Tempus_StepperRKObserverLogging_impl.hpp.

template<class Scalar >
void Tempus::StepperRKObserverLogging< Scalar >::observeBeforeSolve ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
overridevirtual

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

Reimplemented from Tempus::StepperRKObserver< Scalar >.

Definition at line 59 of file Tempus_StepperRKObserverLogging_impl.hpp.

template<class Scalar >
void Tempus::StepperRKObserverLogging< Scalar >::observeBeginStage ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
overridevirtual

2.) Observe Stepper at beginning of each stage.

Reimplemented from Tempus::StepperRKObserver< Scalar >.

Definition at line 45 of file Tempus_StepperRKObserverLogging_impl.hpp.

template<class Scalar >
void Tempus::StepperRKObserverLogging< Scalar >::observeBeginTakeStep ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
overridevirtual

1.) Observe Stepper at beginning of takeStep.

Reimplemented from Tempus::StepperRKObserver< Scalar >.

Definition at line 38 of file Tempus_StepperRKObserverLogging_impl.hpp.

template<class Scalar >
void Tempus::StepperRKObserverLogging< Scalar >::observeEndStage ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
overridevirtual

7.) Observe Stepper at end of each stage.

Reimplemented from Tempus::StepperRKObserver< Scalar >.

Definition at line 80 of file Tempus_StepperRKObserverLogging_impl.hpp.

template<class Scalar >
void Tempus::StepperRKObserverLogging< Scalar >::observeEndTakeStep ( Teuchos::RCP< SolutionHistory< Scalar > >  ,
Stepper< Scalar > &   
)
overridevirtual

8.) Observe Stepper at end of takeStep.

Reimplemented from Tempus::StepperRKObserver< Scalar >.

Definition at line 87 of file Tempus_StepperRKObserverLogging_impl.hpp.

template<class Scalar >
void Tempus::StepperRKObserverLogging< Scalar >::resetLogCounters ( )

Definition at line 93 of file Tempus_StepperRKObserverLogging_impl.hpp.

Member Data Documentation

template<class Scalar >
Teuchos::RCP< std::map<std::string,int> > Tempus::StepperRKObserverLogging< Scalar >::counters_
private

Definition at line 106 of file Tempus_StepperRKObserverLogging_decl.hpp.

template<class Scalar >
const std::string Tempus::StepperRKObserverLogging< Scalar >::nameObserveAfterSolve_

Definition at line 91 of file Tempus_StepperRKObserverLogging_decl.hpp.

template<class Scalar >
const std::string Tempus::StepperRKObserverLogging< Scalar >::nameObserveBeforeExplicit_

Definition at line 92 of file Tempus_StepperRKObserverLogging_decl.hpp.

template<class Scalar >
const std::string Tempus::StepperRKObserverLogging< Scalar >::nameObserveBeforeImplicitExplicitly_

Definition at line 89 of file Tempus_StepperRKObserverLogging_decl.hpp.

template<class Scalar >
const std::string Tempus::StepperRKObserverLogging< Scalar >::nameObserveBeforeSolve_

Definition at line 90 of file Tempus_StepperRKObserverLogging_decl.hpp.

template<class Scalar >
const std::string Tempus::StepperRKObserverLogging< Scalar >::nameObserveBeginStage_

Definition at line 88 of file Tempus_StepperRKObserverLogging_decl.hpp.

template<class Scalar >
const std::string Tempus::StepperRKObserverLogging< Scalar >::nameObserveBeginTakeStep_

Definition at line 87 of file Tempus_StepperRKObserverLogging_decl.hpp.

template<class Scalar >
const std::string Tempus::StepperRKObserverLogging< Scalar >::nameObserveEndStage_

Definition at line 93 of file Tempus_StepperRKObserverLogging_decl.hpp.

template<class Scalar >
const std::string Tempus::StepperRKObserverLogging< Scalar >::nameObserveEndTakeStep_

Definition at line 94 of file Tempus_StepperRKObserverLogging_decl.hpp.

template<class Scalar >
Teuchos::RCP< std::list<std::string> > Tempus::StepperRKObserverLogging< Scalar >::order_
private

Definition at line 107 of file Tempus_StepperRKObserverLogging_decl.hpp.


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