Tempus
Version of the Day
Time Integration
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
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::StepperLeapfrog
Leapfrog time stepper.
Definition:
Tempus_StepperLeapfrog_decl.hpp:96
Tempus::StepperLeapfrogAppActionComposite::appActions_
std::vector< Teuchos::RCP< StepperLeapfrogAppAction< Scalar > > > appActions_
Definition:
Tempus_StepperLeapfrogAppActionComposite.hpp:61
Tempus::StepperLeapfrogAppActionComposite::StepperLeapfrogAppActionComposite
StepperLeapfrogAppActionComposite()
Default constructor.
Tempus_StepperLeapfrogAppAction.hpp
Tempus::StepperLeapfrogAppAction::ACTION_LOCATION
ACTION_LOCATION
Indicates the location of application action (see algorithm).
Definition:
Tempus_StepperLeapfrogAppAction.hpp:39
Tempus::StepperLeapfrogAppAction
Application Action for StepperLeapfrog.
Definition:
Tempus_StepperLeapfrogAppAction.hpp:34
Tempus::StepperLeapfrogAppActionComposite::addLeapfrogAppAction
void addLeapfrogAppAction(Teuchos::RCP< StepperLeapfrogAppAction< Scalar > > appAction)
Definition:
Tempus_StepperLeapfrogAppActionComposite.hpp:47
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
This composite AppAction loops over added AppActions.
Definition:
Tempus_StepperLeapfrogAppActionComposite.hpp:25
Tempus::SolutionHistory
SolutionHistory is basically a container of SolutionStates. SolutionHistory maintains a collection of...
Definition:
Tempus_Integrator.hpp:25
Tempus::StepperLeapfrogAppActionComposite::clearLeapfrogAppActions
void clearLeapfrogAppActions()
Definition:
Tempus_StepperLeapfrogAppActionComposite.hpp:53
Tempus::StepperLeapfrogAppActionComposite::~StepperLeapfrogAppActionComposite
virtual ~StepperLeapfrogAppActionComposite()
Destructor.
Tempus::StepperLeapfrogAppActionComposite::getSize
std::size_t getSize() const
Definition:
Tempus_StepperLeapfrogAppActionComposite.hpp:57
Teuchos::RCP
Generated by
1.8.5