10#ifndef Tempus_IntegratorObserverLogging_decl_hpp
11#define Tempus_IntegratorObserverLogging_decl_hpp
13#include "Tempus_config.hpp"
24template <
class Scalar>
71 Teuchos::RCP<const std::map<std::string, int> >
getCounters();
73 Teuchos::RCP<const std::list<std::string> >
getOrder();
95 void logCall(
const std::string call)
const;
97 Teuchos::RCP<std::map<std::string, int> >
counters_;
98 Teuchos::RCP<std::list<std::string> >
order_;
Thyra Base interface for time integrators. Time integrators are designed to advance the solution from...
IntegratorObserver class for time integrators.
This observer logs calls to observer functions. This observer simply logs and counts the calls to eac...
Teuchos::RCP< const std::list< std::string > > getOrder()
virtual void observeAfterTakeStep(const Integrator< Scalar > &integrator) override
Observe after Stepper takes step.
const std::string nameObserveNextTimeStep_
const std::string nameObserveAfterCheckTimeStep_
const std::string nameObserveEndIntegrator_
IntegratorObserverLogging()
Constructor.
virtual ~IntegratorObserverLogging()
Destructor.
const std::string nameObserveEndTimeStep_
virtual void observeNextTimeStep(const Integrator< Scalar > &integrator) override
Observe after the next time step size is selected.
virtual void observeBeforeTakeStep(const Integrator< Scalar > &integrator) override
Observe before Stepper takes step.
virtual void observeStartTimeStep(const Integrator< Scalar > &integrator) override
Observe the beginning of the time step loop.
const std::string nameObserveStartTimeStep_
virtual void observeStartIntegrator(const Integrator< Scalar > &integrator) override
Observe the beginning of the time integrator.
Teuchos::RCP< const std::map< std::string, int > > getCounters()
void logCall(const std::string call) const
Asserts next call on the stack is correct and removes from stack.
Teuchos::RCP< std::map< std::string, int > > counters_
const std::string nameObserveStartIntegrator_
Teuchos::RCP< std::list< std::string > > order_
const std::string nameObserveAfterTakeStep_
virtual void observeEndIntegrator(const Integrator< Scalar > &integrator) override
Observe the end of the time integrator.
const std::string nameObserveBeforeTakeStep_
virtual void observeEndTimeStep(const Integrator< Scalar > &integrator) override
Observe the end of the time step loop.
virtual void observeAfterCheckTimeStep(const Integrator< Scalar > &integrator) override
Observe after checking time step.