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_StepperNewmarkExplicitAFormAppActionComposite.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_StepperNewmarkExplicitAFormAppActionComposite_hpp
11
#define Tempus_StepperNewmarkExplicitAFormAppActionComposite_hpp
12
13
#include "Tempus_config.hpp"
14
#include "
Tempus_StepperNewmarkExplicitAFormAppAction.hpp
"
15
#include "Tempus_TimeStepControl.hpp"
16
#include <vector>
17
18
namespace
Tempus {
19
25
template
<
class
Scalar>
26
class
StepperNewmarkExplicitAFormAppActionComposite
27
:
virtual
public
Tempus::StepperNewmarkExplicitAFormAppAction
<Scalar> {
28
public
:
30
StepperNewmarkExplicitAFormAppActionComposite
();
31
33
virtual
~StepperNewmarkExplicitAFormAppActionComposite
();
34
36
virtual
void
execute
(
37
Teuchos::RCP
<
SolutionHistory<Scalar>
> sh,
38
Teuchos::RCP
<
StepperNewmarkExplicitAForm<Scalar>
> stepper,
39
const
typename
StepperNewmarkExplicitAFormAppAction
<
40
Scalar>::
ACTION_LOCATION
actLoc)
41
{
42
for
(
auto
& a :
appActions_
) a->execute(sh, stepper, actLoc);
43
}
44
45
// Add AppAction to the AppAction vector.
46
void
addNewmarkExplicitAFormAppAction
(
47
Teuchos::RCP
<
StepperNewmarkExplicitAFormAppAction<Scalar>
> appAction);
48
{
49
appActions_
.push_back(appAction);
50
}
51
52
// Clear the AppAction vector.
53
void
clearAppActions
();
54
{
55
appActions_
.clear();
56
}
57
58
// Return the size of the AppAction vector.
59
std::size_t
getSize
()
const
{
return
appActions_
.size(); }
60
61
private
:
62
std::vector<Teuchos::RCP<StepperNewmarkExplicitAFormAppAction<Scalar> > >
63
appActions_
;
64
};
65
66
}
// namespace Tempus
67
#endif // Tempus_StepperNewmarkExplicitAFormAppActionComposite_hpp
Tempus::StepperNewmarkExplicitAFormAppAction
Application Action for StepperNewmarkExplicitAForm.
Definition:
Tempus_StepperNewmarkExplicitAFormAppAction.hpp:35
Tempus::StepperNewmarkExplicitAFormAppActionComposite
This composite AppAction loops over added AppActions.
Definition:
Tempus_StepperNewmarkExplicitAFormAppActionComposite.hpp:26
Tempus::StepperNewmarkExplicitAFormAppActionComposite::appActions_
std::vector< Teuchos::RCP< StepperNewmarkExplicitAFormAppAction< Scalar > > > appActions_
Definition:
Tempus_StepperNewmarkExplicitAFormAppActionComposite.hpp:63
Tempus::StepperNewmarkExplicitAForm
Newmark Explicit time stepper.
Definition:
Tempus_StepperNewmarkExplicitAForm_decl.hpp:93
Tempus::StepperNewmarkExplicitAFormAppAction::ACTION_LOCATION
ACTION_LOCATION
Indicates the location of application action (see algorithm).
Definition:
Tempus_StepperNewmarkExplicitAFormAppAction.hpp:38
Tempus::SolutionHistory
SolutionHistory is basically a container of SolutionStates. SolutionHistory maintains a collection of...
Definition:
Tempus_Integrator.hpp:28
Tempus::StepperNewmarkExplicitAFormAppActionComposite::getSize
std::size_t getSize() const
Definition:
Tempus_StepperNewmarkExplicitAFormAppActionComposite.hpp:59
Tempus::StepperNewmarkExplicitAFormAppActionComposite::execute
virtual void execute(Teuchos::RCP< SolutionHistory< Scalar > > sh, Teuchos::RCP< StepperNewmarkExplicitAForm< Scalar > > stepper, const typename StepperNewmarkExplicitAFormAppAction< Scalar >::ACTION_LOCATION actLoc)
Execute application action for NewmarkExplicitAForm Stepper.
Definition:
Tempus_StepperNewmarkExplicitAFormAppActionComposite.hpp:36
Tempus_StepperNewmarkExplicitAFormAppAction.hpp
Tempus::StepperNewmarkExplicitAFormAppActionComposite::clearAppActions
void clearAppActions()
Tempus::StepperNewmarkExplicitAFormAppActionComposite::~StepperNewmarkExplicitAFormAppActionComposite
virtual ~StepperNewmarkExplicitAFormAppActionComposite()
Destructor.
Teuchos::RCP
Tempus::StepperNewmarkExplicitAFormAppActionComposite::addNewmarkExplicitAFormAppAction
void addNewmarkExplicitAFormAppAction(Teuchos::RCP< StepperNewmarkExplicitAFormAppAction< Scalar > > appAction)
Tempus::StepperNewmarkExplicitAFormAppActionComposite::StepperNewmarkExplicitAFormAppActionComposite
StepperNewmarkExplicitAFormAppActionComposite()
Default constructor.
Generated on Thu Dec 26 2024 09:25:16 for Tempus by
1.8.5