Tempus
Version of the Day
Time Integration
Loading...
Searching...
No Matches
src
Tempus_StepperLeapfrogAppActionComposite.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_StepperLeapfrogAppActionComposite_hpp
10
#define Tempus_StepperLeapfrogAppActionComposite_hpp
11
12
#include "Tempus_config.hpp"
13
#include "
Tempus_StepperLeapfrogAppAction.hpp
"
14
#include "Tempus_TimeStepControl.hpp"
15
#include <vector>
16
17
namespace
Tempus
{
18
24
template
<
class
Scalar>
25
class
StepperLeapfrogAppActionComposite
26
:
virtual
public
Tempus::StepperLeapfrogAppAction
<Scalar>
27
{
28
public
:
29
31
StepperLeapfrogAppActionComposite
();
32
34
virtual
~StepperLeapfrogAppActionComposite
();
35
37
virtual
void
execute
(
38
Teuchos::RCP<
SolutionHistory<Scalar>
> sh,
39
Teuchos::RCP<
StepperLeapfrog<Scalar>
> stepper,
40
const
typename
StepperLeapfrogAppAction<Scalar>::ACTION_LOCATION
actLoc)
41
{
42
for
(
auto
& a :
appActions_
)
43
a->execute(sh, stepper, actLoc);
44
}
45
46
// Add AppAction to the AppAction vector.
47
void
addLeapfrogAppAction
(Teuchos::RCP<
StepperLeapfrogAppAction<Scalar>
> appAction)
48
{
49
appActions_
.push_back(appAction);
50
}
51
52
// Clear the AppAction vector.
53
void
clearLeapfrogAppActions
()
54
{
appActions_
.clear();}
55
56
// Return the size of the AppAction vector.
57
std::size_t
getSize
()
const
{
return
appActions_
.size(); }
58
59
private
:
60
61
std::vector<Teuchos::RCP<StepperLeapfrogAppAction<Scalar > > >
appActions_
;
62
63
};
64
65
}
// namespace Tempus
66
#endif
// Tempus_StepperLeapfrogAppActionComposite_hpp
Tempus_StepperLeapfrogAppAction.hpp
Tempus::SolutionHistory
SolutionHistory is basically a container of SolutionStates. SolutionHistory maintains a collection of...
Definition:
Tempus_SolutionHistory_decl.hpp:121
Tempus::StepperLeapfrogAppActionComposite
This composite AppAction loops over added AppActions.
Definition:
Tempus_StepperLeapfrogAppActionComposite.hpp:27
Tempus::StepperLeapfrogAppActionComposite::addLeapfrogAppAction
void addLeapfrogAppAction(Teuchos::RCP< StepperLeapfrogAppAction< Scalar > > appAction)
Definition:
Tempus_StepperLeapfrogAppActionComposite.hpp:47
Tempus::StepperLeapfrogAppActionComposite::clearLeapfrogAppActions
void clearLeapfrogAppActions()
Definition:
Tempus_StepperLeapfrogAppActionComposite.hpp:53
Tempus::StepperLeapfrogAppActionComposite::appActions_
std::vector< Teuchos::RCP< StepperLeapfrogAppAction< Scalar > > > appActions_
Definition:
Tempus_StepperLeapfrogAppActionComposite.hpp:61
Tempus::StepperLeapfrogAppActionComposite::StepperLeapfrogAppActionComposite
StepperLeapfrogAppActionComposite()
Default constructor.
Tempus::StepperLeapfrogAppActionComposite::execute
virtual void execute(Teuchos::RCP< SolutionHistory< Scalar > > sh, Teuchos::RCP< StepperLeapfrog< Scalar > > stepper, const typename StepperLeapfrogAppAction< Scalar >::ACTION_LOCATION actLoc)
Execute application action for Leapfrog Stepper.
Definition:
Tempus_StepperLeapfrogAppActionComposite.hpp:37
Tempus::StepperLeapfrogAppActionComposite::~StepperLeapfrogAppActionComposite
virtual ~StepperLeapfrogAppActionComposite()
Destructor.
Tempus::StepperLeapfrogAppActionComposite::getSize
std::size_t getSize() const
Definition:
Tempus_StepperLeapfrogAppActionComposite.hpp:57
Tempus::StepperLeapfrogAppAction
Application Action for StepperLeapfrog.
Definition:
Tempus_StepperLeapfrogAppAction.hpp:35
Tempus::StepperLeapfrogAppAction::ACTION_LOCATION
ACTION_LOCATION
Indicates the location of application action (see algorithm).
Definition:
Tempus_StepperLeapfrogAppAction.hpp:39
Tempus::StepperLeapfrog
Leapfrog time stepper.
Definition:
Tempus_StepperLeapfrog_decl.hpp:97
Tempus
Definition:
Tempus_AdjointAuxSensitivityModelEvaluator_decl.hpp:21
Generated by
1.9.6