Tempus Version of the Day
Time Integration
Loading...
Searching...
No Matches
Tempus_StepperBDF2AppActionComposite.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_StepperBDF2AppActionComposite_hpp
10#define Tempus_StepperBDF2AppActionComposite_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::StepperBDF2AppAction<Scalar>
27{
28public:
29
32
35
37 virtual void execute(
38 Teuchos::RCP<SolutionHistory<Scalar> > sh,
39 Teuchos::RCP<StepperBDF2<Scalar> > stepper,
41 {
42 for(auto& a : appActions_)
43 a->execute(sh, stepper, actLoc);
44 }
45
46 // Add AppAction to the AppAction vector.
47 void addBDF2AppAction(Teuchos::RCP<StepperBDF2AppAction<Scalar> > appAction);
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<StepperBDF2AppAction<Scalar > > > appActions_;
62
63};
64
65} // namespace Tempus
66#endif // Tempus_StepperBDF2AppActionComposite_hpp
This composite AppAction loops over added AppActions.
virtual ~StepperBDF2AppActionComposite()
Destructor.
void addBDF2AppAction(Teuchos::RCP< StepperBDF2AppAction< Scalar > > appAction)
std::vector< Teuchos::RCP< StepperBDF2AppAction< Scalar > > > appActions_
virtual void execute(Teuchos::RCP< SolutionHistory< Scalar > > sh, Teuchos::RCP< StepperBDF2< Scalar > > stepper, const typename StepperBDF2AppAction< Scalar >::ACTION_LOCATION actLoc)
Execute application action for BDF2 Stepper.
StepperBDF2AppActionComposite()
Default constructor.
Application Action for StepperBDF2.
ACTION_LOCATION
Indicates the location of application action (see algorithm).