Tempus
Version of the Day
Time Integration
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
Tempus_StepperBackwardEulerAppActionComposite.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_StepperBackwardEulerAppActionComposite_hpp
10
#define Tempus_StepperBackwardEulerAppActionComposite_hpp
11
12
#include "
Tempus_StepperBackwardEulerAppAction.hpp
"
13
#include "Tempus_TimeStepControl.hpp"
14
#include <vector>
15
16
namespace
Tempus {
17
18
/** \brief This composite AppAction loops over added AppActions.
19
*
20
* Inidividual AppActions are executed in the order in which they
21
* were added.
22
*/
23
template
<
class
Scalar>
24
class
StepperBackwardEulerAppActionComposite
25
:
virtual
public
Tempus::StepperBackwardEulerAppAction
<Scalar>
26
{
27
public
:
28
29
/// Default constructor
30
StepperBackwardEulerAppActionComposite
();
31
32
/// Destructor
33
virtual
~StepperBackwardEulerAppActionComposite
();
34
35
/// Execute application action for BackwardEuler Stepper.
36
virtual
void
execute
(
37
Teuchos::RCP<
SolutionHistory<Scalar>
> sh,
38
Teuchos::RCP<
StepperBackwardEuler<Scalar>
> stepper,
39
const
typename
StepperBackwardEulerAppAction<Scalar>::ACTION_LOCATION
actLoc)
40
{
41
for
(
auto
& a :
appActions_
)
42
a->execute(sh, stepper, actLoc);
43
}
44
45
// Add AppAction to the AppAction vector.
46
void
addBackwardEulerAppAction
(Teuchos::RCP<
StepperBackwardEulerAppAction<Scalar>
> appAction);
47
{
48
appActions_
.push_back(appAction);
49
}
50
51
// Clear the AppAction vector.
52
void
clearBackwardEulerAppActions
();
53
{
appActions_
.clear();}
54
55
// Return the size of the AppAction vector.
56
std::size_t
getSize
()
const
{
return
appActions_
.size(); }
57
58
private
:
59
60
std::vector<Teuchos::RCP<StepperBackwardEulerAppAction<Scalar > > >
appActions_
;
61
62
};
63
64
}
// namespace Tempus
65
#endif // Tempus_StepperBackwardEulerAppActionComposite_hpp
Tempus::StepperBackwardEulerAppActionComposite::getSize
std::size_t getSize() const
Definition:
Tempus_StepperBackwardEulerAppActionComposite.hpp:56
Tempus::StepperBackwardEulerAppActionComposite::~StepperBackwardEulerAppActionComposite
virtual ~StepperBackwardEulerAppActionComposite()
Destructor.
Tempus::StepperBackwardEulerAppAction::ACTION_LOCATION
ACTION_LOCATION
Indicates the location of application action (see algorithm).
Definition:
Tempus_StepperBackwardEulerAppAction.hpp:52
Tempus::StepperBackwardEulerAppAction
Application Action for StepperBackwardEuler.
Definition:
Tempus_StepperBackwardEulerAppAction.hpp:47
Tempus::StepperBackwardEulerAppActionComposite::StepperBackwardEulerAppActionComposite
StepperBackwardEulerAppActionComposite()
Default constructor.
Tempus_StepperBackwardEulerAppAction.hpp
Tempus::StepperBackwardEulerAppActionComposite::addBackwardEulerAppAction
void addBackwardEulerAppAction(Teuchos::RCP< StepperBackwardEulerAppAction< Scalar > > appAction)
Tempus::StepperBackwardEuler
Backward Euler time stepper.
Definition:
Tempus_StepperBackwardEuler_decl.hpp:72
Tempus::SolutionHistory
SolutionHistory is basically a container of SolutionStates. SolutionHistory maintains a collection of...
Definition:
Tempus_Integrator.hpp:25
Tempus::StepperBackwardEulerAppActionComposite::appActions_
std::vector< Teuchos::RCP< StepperBackwardEulerAppAction< Scalar > > > appActions_
Definition:
Tempus_StepperBackwardEulerAppActionComposite.hpp:60
Tempus::StepperBackwardEulerAppActionComposite::clearBackwardEulerAppActions
void clearBackwardEulerAppActions()
Tempus::StepperBackwardEulerAppActionComposite
This composite AppAction loops over added AppActions.
Definition:
Tempus_StepperBackwardEulerAppActionComposite.hpp:24
Tempus::StepperBackwardEulerAppActionComposite::execute
virtual void execute(Teuchos::RCP< SolutionHistory< Scalar > > sh, Teuchos::RCP< StepperBackwardEuler< Scalar > > stepper, const typename StepperBackwardEulerAppAction< Scalar >::ACTION_LOCATION actLoc)
Execute application action for BackwardEuler Stepper.
Definition:
Tempus_StepperBackwardEulerAppActionComposite.hpp:36
src
Tempus_StepperBackwardEulerAppActionComposite.hpp
Generated on Tue Nov 26 2024 09:38:41 for Tempus by
1.8.5