Tempus
Version of the Day
Time Integration
Toggle main menu visibility
Loading...
Searching...
No Matches
src
Tempus_IntegratorObserverComposite_decl.hpp
Go to the documentation of this file.
1
// @HEADER
2
// ****************************************************************************
3
// Tempus: Copyright (2017) Sandia Corporation
4
//
5
// Distributed under BSD 3-clause license (See accompanying file Copyright.txt)
6
// ****************************************************************************
7
// @HEADER
8
9
#ifndef Tempus_IntegratorObserverComposite_decl_hpp
10
#define Tempus_IntegratorObserverComposite_decl_hpp
11
12
#include "Tempus_config.hpp"
13
#include "
Tempus_IntegratorObserver.hpp
"
14
#include "Tempus_TimeStepControl.hpp"
15
#include <vector>
16
17
namespace
Tempus
{
18
24
template
<
class
Scalar>
25
class
IntegratorObserverComposite
26
:
virtual
public
Tempus::IntegratorObserver
<Scalar>
27
{
28
public
:
29
31
IntegratorObserverComposite
();
32
34
virtual
~IntegratorObserverComposite
();
35
37
38
39
virtual
void
observeStartIntegrator
(
const
Integrator<Scalar>
& integrator)
override
;
40
42
virtual
void
observeStartTimeStep
(
const
Integrator<Scalar>
& integrator)
override
;
43
45
virtual
void
observeNextTimeStep
(
const
Integrator<Scalar>
& integrator)
override
;
46
48
virtual
void
observeBeforeTakeStep
(
const
Integrator<Scalar>
& integrator)
override
;
49
51
virtual
void
observeAfterTakeStep
(
const
Integrator<Scalar>
& integrator)
override
;
52
54
virtual
void
observeAfterCheckTimeStep
(
const
Integrator<Scalar>
& integrator)
override
;
55
57
virtual
void
observeEndTimeStep
(
const
Integrator<Scalar>
& integrator)
override
;
58
60
virtual
void
observeEndIntegrator
(
const
Integrator<Scalar>
& integrator)
override
;
61
62
// add observer to the composite observer list
63
void
addObserver
(
const
Teuchos::RCP<
IntegratorObserver<Scalar>
> &observer);
64
65
// clear all observer from the composite observer list
66
void
clearObservers
();
68
69
private
:
70
71
std::vector<Teuchos::RCP<IntegratorObserver<Scalar > > >
observers_
;
72
73
};
74
75
}
// namespace Tempus
76
#endif
// Tempus_IntegratorObserverComposite_decl_hpp
Tempus_IntegratorObserver.hpp
Tempus::IntegratorObserverComposite::observeEndIntegrator
virtual void observeEndIntegrator(const Integrator< Scalar > &integrator) override
Observe the end of the time integrator.
Definition
Tempus_IntegratorObserverComposite_impl.hpp:81
Tempus::IntegratorObserverComposite::IntegratorObserverComposite
IntegratorObserverComposite()
Default constructor.
Definition
Tempus_IntegratorObserverComposite_impl.hpp:18
Tempus::IntegratorObserverComposite::observers_
std::vector< Teuchos::RCP< IntegratorObserver< Scalar > > > observers_
Definition
Tempus_IntegratorObserverComposite_decl.hpp:71
Tempus::IntegratorObserverComposite::observeStartIntegrator
virtual void observeStartIntegrator(const Integrator< Scalar > &integrator) override
Observe the beginning of the time integrator.
Definition
Tempus_IntegratorObserverComposite_impl.hpp:25
Tempus::IntegratorObserverComposite::observeAfterTakeStep
virtual void observeAfterTakeStep(const Integrator< Scalar > &integrator) override
Observe after Stepper takes step.
Definition
Tempus_IntegratorObserverComposite_impl.hpp:57
Tempus::IntegratorObserverComposite::observeEndTimeStep
virtual void observeEndTimeStep(const Integrator< Scalar > &integrator) override
Observe the end of the time step loop.
Definition
Tempus_IntegratorObserverComposite_impl.hpp:73
Tempus::IntegratorObserverComposite::observeNextTimeStep
virtual void observeNextTimeStep(const Integrator< Scalar > &integrator) override
Observe after the next time step size is selected.
Definition
Tempus_IntegratorObserverComposite_impl.hpp:41
Tempus::IntegratorObserverComposite::~IntegratorObserverComposite
virtual ~IntegratorObserverComposite()
Destructor.
Definition
Tempus_IntegratorObserverComposite_impl.hpp:21
Tempus::IntegratorObserverComposite::clearObservers
void clearObservers()
Definition
Tempus_IntegratorObserverComposite_impl.hpp:96
Tempus::IntegratorObserverComposite::observeBeforeTakeStep
virtual void observeBeforeTakeStep(const Integrator< Scalar > &integrator) override
Observe before Stepper takes step.
Definition
Tempus_IntegratorObserverComposite_impl.hpp:49
Tempus::IntegratorObserverComposite::observeStartTimeStep
virtual void observeStartTimeStep(const Integrator< Scalar > &integrator) override
Observe the beginning of the time step loop.
Definition
Tempus_IntegratorObserverComposite_impl.hpp:33
Tempus::IntegratorObserverComposite::addObserver
void addObserver(const Teuchos::RCP< IntegratorObserver< Scalar > > &observer)
Definition
Tempus_IntegratorObserverComposite_impl.hpp:89
Tempus::IntegratorObserverComposite::observeAfterCheckTimeStep
virtual void observeAfterCheckTimeStep(const Integrator< Scalar > &integrator) override
Observe after checking time step.
Definition
Tempus_IntegratorObserverComposite_impl.hpp:65
Tempus::IntegratorObserver
IntegratorObserver class for time integrators.
Definition
Tempus_IntegratorObserver.hpp:43
Tempus::Integrator
Thyra Base interface for time integrators. Time integrators are designed to advance the solution from...
Definition
Tempus_Integrator.hpp:65
Tempus
Definition
Tempus_AdjointAuxSensitivityModelEvaluator_decl.hpp:21
Generated by
1.17.0