Tempus Version of the Day
Time Integration
Loading...
Searching...
No Matches
Tempus_StepperHHTAlphaAppActionComposite.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_StepperHHTAlphaAppActionComposite_hpp
10#define Tempus_StepperHHTAlphaAppActionComposite_hpp
11
12#include "Tempus_config.hpp"
14#include "Tempus_TimeStepControl.hpp"
15#include <vector>
16
17namespace Tempus {
18
24template<class Scalar>
26 : virtual public Tempus::StepperHHTAlphaAppAction<Scalar>
27{
28public:
29
32
35
37 virtual void execute(
38 Teuchos::RCP<SolutionHistory<Scalar> > sh,
39 Teuchos::RCP<StepperHHTAlpha<Scalar> > stepper,
41 {
42 for(auto& a : appActions_)
43 a->execute(sh, stepper, actLoc);
44 }
45
46 // Add AppAction to the AppAction vector.
48 {
49 appActions_.push_back(appAction);
50 }
51
52 // Clear the AppAction vector.
54 { appActions_.clear();}
55
56 // Return the size of the AppAction vector.
57 std::size_t getSize() const { return appActions_.size(); }
58
59private:
60
61 std::vector<Teuchos::RCP<StepperHHTAlphaAppAction<Scalar > > > appActions_;
62
63};
64
65} // namespace Tempus
66#endif // Tempus_StepperHHTAlphaAppActionComposite_hpp
SolutionHistory is basically a container of SolutionStates. SolutionHistory maintains a collection of...
This composite AppAction loops over added AppActions.
std::vector< Teuchos::RCP< StepperHHTAlphaAppAction< Scalar > > > appActions_
virtual void execute(Teuchos::RCP< SolutionHistory< Scalar > > sh, Teuchos::RCP< StepperHHTAlpha< Scalar > > stepper, const typename StepperHHTAlphaAppAction< Scalar >::ACTION_LOCATION actLoc)
Execute application action for HHTAlpha Stepper.
StepperHHTAlphaAppActionComposite()
Default constructor.
virtual ~StepperHHTAlphaAppActionComposite()
Destructor.
void addHHTAlphaAppAction(Teuchos::RCP< StepperHHTAlphaAppAction< Scalar > > appAction)
ACTION_LOCATION
Indicates the location of application action (see algorithm).