Tempus
Version of the Day
Time Integration
Loading...
Searching...
No Matches
src
Tempus_StepperSubcyclingAppActionComposite.hpp
Go to the documentation of this file.
1
//@HEADER
2
// *****************************************************************************
3
// Tempus: Time Integration and Sensitivity Analysis Package
4
//
5
// Copyright 2017 NTESS and the Tempus contributors.
6
// SPDX-License-Identifier: BSD-3-Clause
7
// *****************************************************************************
8
//@HEADER
9
10
#ifndef Tempus_StepperSubcyclingAppActionComposite_hpp
11
#define Tempus_StepperSubcyclingAppActionComposite_hpp
12
13
#include "Tempus_config.hpp"
14
#include "
Tempus_StepperSubcyclingAppAction.hpp
"
15
#include "Tempus_TimeStepControl.hpp"
16
#include <vector>
17
18
namespace
Tempus
{
19
25
template
<
class
Scalar>
26
class
StepperSubcyclingAppActionComposite
27
:
virtual
public
Tempus::StepperSubcyclingAppAction
<Scalar> {
28
public
:
30
StepperSubcyclingAppActionComposite
();
31
33
virtual
~StepperSubcyclingAppActionComposite
();
34
36
virtual
void
execute
(
37
Teuchos::RCP<
SolutionHistory<Scalar>
> sh,
38
Teuchos::RCP<
StepperSubcycling<Scalar>
> stepper,
39
const
typename
StepperSubcyclingAppAction<Scalar>::ACTION_LOCATION
actLoc)
40
{
41
for
(
auto
& a :
appActions_
) a->execute(sh, stepper, actLoc);
42
}
43
44
// Add AppAction to the AppAction vector.
45
void
addSubcyclingAppAction
(
46
Teuchos::RCP<
StepperSubcyclingAppAction<Scalar>
> appAction);
47
{
48
appActions_
.push_back(appAction);
49
}
50
51
// Clear the AppAction vector.
52
void
clearSubcyclingAppActions
();
53
{
54
appActions_
.clear();
55
}
56
57
// Return the size of the AppAction vector.
58
std::size_t
getSize
()
const
{
return
appActions_
.size(); }
59
60
private
:
61
std::vector<Teuchos::RCP<StepperSubcyclingAppAction<Scalar> > >
appActions_
;
62
};
63
64
}
// namespace Tempus
65
#endif
// Tempus_StepperSubcyclingAppActionComposite_hpp
Tempus_StepperSubcyclingAppAction.hpp
Tempus::SolutionHistory
SolutionHistory is basically a container of SolutionStates. SolutionHistory maintains a collection of...
Definition
Tempus_SolutionHistory_decl.hpp:119
Tempus::StepperSubcyclingAppActionComposite
This composite AppAction loops over added AppActions.
Definition
Tempus_StepperSubcyclingAppActionComposite.hpp:27
Tempus::StepperSubcyclingAppActionComposite::execute
virtual void execute(Teuchos::RCP< SolutionHistory< Scalar > > sh, Teuchos::RCP< StepperSubcycling< Scalar > > stepper, const typename StepperSubcyclingAppAction< Scalar >::ACTION_LOCATION actLoc)
Execute application action for Subcycling Stepper.
Definition
Tempus_StepperSubcyclingAppActionComposite.hpp:36
Tempus::StepperSubcyclingAppActionComposite::addSubcyclingAppAction
void addSubcyclingAppAction(Teuchos::RCP< StepperSubcyclingAppAction< Scalar > > appAction)
Tempus::StepperSubcyclingAppActionComposite::~StepperSubcyclingAppActionComposite
virtual ~StepperSubcyclingAppActionComposite()
Destructor.
Tempus::StepperSubcyclingAppActionComposite::StepperSubcyclingAppActionComposite
StepperSubcyclingAppActionComposite()
Default constructor.
Tempus::StepperSubcyclingAppActionComposite::appActions_
std::vector< Teuchos::RCP< StepperSubcyclingAppAction< Scalar > > > appActions_
Definition
Tempus_StepperSubcyclingAppActionComposite.hpp:61
Tempus::StepperSubcyclingAppActionComposite::getSize
std::size_t getSize() const
Definition
Tempus_StepperSubcyclingAppActionComposite.hpp:58
Tempus::StepperSubcyclingAppActionComposite::clearSubcyclingAppActions
void clearSubcyclingAppActions()
Tempus::StepperSubcyclingAppAction
Application Action for StepperSubcycling.
Definition
Tempus_StepperSubcyclingAppAction.hpp:35
Tempus::StepperSubcyclingAppAction::ACTION_LOCATION
ACTION_LOCATION
Indicates the location of application action (see algorithm).
Definition
Tempus_StepperSubcyclingAppAction.hpp:38
Tempus::StepperSubcycling
Subcycling time stepper.
Definition
Tempus_StepperSubcycling_decl.hpp:53
Tempus
Definition
Tempus_AdjointAuxSensitivityModelEvaluator_decl.hpp:22
Generated on Thu Oct 9 2025 20:59:09 for Tempus by
1.9.8