Tempus  Version of the Day
Time Integration
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Tempus_StepperFactory_impl.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_StepperFactory_impl_hpp
11 #define Tempus_StepperFactory_impl_hpp
12 
13 #include "Tempus_StepperForwardEuler.hpp"
14 #include "Tempus_StepperBackwardEuler.hpp"
15 #include "Tempus_StepperTrapezoidal.hpp"
16 #include "Tempus_StepperBDF2.hpp"
17 #include "Tempus_StepperNewmarkImplicitAForm.hpp"
18 #include "Tempus_StepperNewmarkImplicitDForm.hpp"
19 #include "Tempus_StepperNewmarkExplicitAForm.hpp"
20 #include "Tempus_StepperHHTAlpha.hpp"
22 #include "Tempus_StepperIMEX_RK.hpp"
23 #include "Tempus_StepperIMEX_RK_Partition.hpp"
24 #include "Tempus_StepperOperatorSplit.hpp"
25 #include "Tempus_StepperSubcycling.hpp"
26 #include "Tempus_StepperLeapfrog.hpp"
27 
28 namespace Tempus {
29 
30 template <class Scalar>
32  std::string stepperType,
33  const Teuchos::RCP<const Thyra::ModelEvaluator<Scalar> >& model)
34 {
35  if (stepperType == "") stepperType = "Forward Euler";
36  return this->createStepper(stepperType, Teuchos::null, model);
37 }
38 
39 template <class Scalar>
42  const Teuchos::RCP<const Thyra::ModelEvaluator<Scalar> >& model)
43 {
44  std::string stepperType = "Forward Euler";
45  if (stepperPL != Teuchos::null)
46  stepperType = stepperPL->get<std::string>("Stepper Type", "Forward Euler");
47  return this->createStepper(stepperType, stepperPL, model);
48 }
49 
50 template <class Scalar>
53  std::vector<Teuchos::RCP<const Thyra::ModelEvaluator<Scalar> > > models)
54 {
55  std::string stepperType = "Operator Split";
56  if (stepperPL != Teuchos::null)
57  stepperType = stepperPL->get<std::string>("Stepper Type");
58 
59  if (stepperType == "Operator Split")
60  return createStepperOperatorSplit(models, stepperPL);
61  else {
62  TEUCHOS_TEST_FOR_EXCEPTION(true, std::logic_error,
63  "Unknown 'Stepper Type' = " << stepperType);
64  }
65 }
66 
67 template <class Scalar>
69  std::string stepperType, Teuchos::RCP<Teuchos::ParameterList> stepperPL,
70  const Teuchos::RCP<const Thyra::ModelEvaluator<Scalar> >& model)
71 {
72  using Teuchos::rcp;
73  if (stepperType == "Forward Euler")
74  return createStepperForwardEuler(model, stepperPL);
75  else if (stepperType == "Backward Euler")
76  return createStepperBackwardEuler(model, stepperPL);
77  else if (stepperType == "Trapezoidal Method")
78  return createStepperTrapezoidal(model, stepperPL);
79  else if (stepperType == "BDF2")
80  return createStepperBDF2(model, stepperPL);
81  else if (stepperType == "Newmark Implicit a-Form")
82  return createStepperNewmarkImplicitAForm(model, stepperPL);
83  else if (stepperType == "Newmark Implicit d-Form")
84  return createStepperNewmarkImplicitDForm(model, stepperPL);
85  else if (stepperType == "Newmark Explicit a-Form")
86  return createStepperNewmarkExplicitAForm(model, stepperPL);
87  else if (stepperType == "HHT-Alpha")
88  return createStepperHHTAlpha(model, stepperPL);
89  else if (stepperType == "General ERK")
90  return createStepperERK_General(model, stepperPL);
91  else if (stepperType == "RK Forward Euler" || stepperType == "RK1")
92  return createStepperERK_ForwardEuler(model, stepperPL);
93  else if (stepperType == "RK Explicit 4 Stage")
94  return createStepperERK_4Stage4thOrder(model, stepperPL);
95  else if (stepperType == "RK Explicit 3/8 Rule")
96  return createStepperERK_3_8Rule(model, stepperPL);
97  else if (stepperType == "RK Explicit 4 Stage 3rd order by Runge")
98  return createStepperERK_4Stage3rdOrderRunge(model, stepperPL);
99  else if (stepperType == "RK Explicit 5 Stage 3rd order by Kinnmark and Gray")
100  return createStepperERK_5Stage3rdOrderKandG(model, stepperPL);
101  else if (stepperType == "RK Explicit 3 Stage 3rd order")
102  return createStepperERK_3Stage3rdOrder(model, stepperPL);
103  else if (stepperType == "RK Explicit 3 Stage 3rd order TVD" ||
104  stepperType == "SSPERK33" || stepperType == "SSPRK3")
105  return createStepperERK_3Stage3rdOrderTVD(model, stepperPL);
106  else if (stepperType == "RK Explicit 3 Stage 3rd order by Heun")
107  return createStepperERK_3Stage3rdOrderHeun(model, stepperPL);
108  else if (stepperType == "RK Explicit Midpoint")
109  return createStepperERK_Midpoint(model, stepperPL);
110  else if (stepperType == "RK Explicit Trapezoidal" ||
111  stepperType == "Heuns Method" || stepperType == "SSPERK22" ||
112  stepperType == "SSPRK2")
113  return createStepperERK_Trapezoidal(model, stepperPL);
114  else if (stepperType == "RK Explicit Ralston" || stepperType == "RK2")
115  return createStepperERK_Ralston(model, stepperPL);
116  else if (stepperType == "SSPERK54")
117  return createStepperERK_SSPERK54(model, stepperPL);
118  else if (stepperType == "Bogacki-Shampine 3(2) Pair")
119  return createStepperERK_BogackiShampine32(model, stepperPL);
120  else if (stepperType == "Merson 4(5) Pair")
121  return createStepperERK_Merson45(model, stepperPL);
122  else if (stepperType == "General DIRK")
123  return createStepperDIRK_General(model, stepperPL);
124  else if (stepperType == "RK Backward Euler")
125  return createStepperDIRK_BackwardEuler(model, stepperPL);
126  else if (stepperType == "SDIRK 2 Stage 2nd order")
127  return createStepperSDIRK_2Stage2ndOrder(model, stepperPL);
128  else if (stepperType == "SSPDIRK22")
129  return createStepperSDIRK_SSPDIRK22(model, stepperPL);
130  else if (stepperType == "SDIRK 3 Stage 2nd order")
131  return createStepperSDIRK_3Stage2ndOrder(model, stepperPL);
132  else if (stepperType == "SSPDIRK32")
133  return createStepperSDIRK_SSPDIRK32(model, stepperPL);
134  else if (stepperType == "SSPDIRK23")
135  return createStepperSDIRK_SSPDIRK23(model, stepperPL);
136  else if (stepperType == "SSPDIRK33")
137  return createStepperSDIRK_SSPDIRK33(model, stepperPL);
138  else if (stepperType == "SDIRK 2 Stage 3rd order")
139  return createStepperSDIRK_2Stage3rdOrder(model, stepperPL);
140  else if (stepperType == "EDIRK 2 Stage 3rd order")
141  return createStepperEDIRK_2Stage3rdOrder(model, stepperPL);
142  else if (stepperType == "DIRK 1 Stage Theta Method")
143  return createStepperDIRK_1StageTheta(model, stepperPL);
144  else if (stepperType == "EDIRK 2 Stage Theta Method")
145  return createStepperEDIRK_2StageTheta(model, stepperPL);
146  else if (stepperType == "RK Trapezoidal Rule" ||
147  stepperType == "RK Crank-Nicolson")
148  return createStepperEDIRK_TrapezoidalRule(model, stepperPL);
149  else if (stepperType == "RK Implicit Midpoint")
150  return createStepperSDIRK_ImplicitMidpoint(model, stepperPL);
151  else if (stepperType == "RK Implicit 1 Stage 1st order Radau IA")
152  return createStepperDIRK_1Stage1stOrderRadauIA(model, stepperPL);
153  else if (stepperType == "RK Implicit 2 Stage 2nd order Lobatto IIIB")
154  return createStepperDIRK_2Stage2ndOrderLobattoIIIB(model, stepperPL);
155  else if (stepperType == "SDIRK 5 Stage 4th order")
156  return createStepperSDIRK_5Stage4thOrder(model, stepperPL);
157  else if (stepperType == "SDIRK 3 Stage 4th order")
158  return createStepperSDIRK_3Stage4thOrder(model, stepperPL);
159  else if (stepperType == "SDIRK 5 Stage 5th order")
160  return createStepperSDIRK_5Stage5thOrder(model, stepperPL);
161  else if (stepperType == "SDIRK 2(1) Pair")
162  return createStepperSDIRK_21Pair(model, stepperPL);
163  else if (stepperType == "IMEX RK 1st order" || stepperType == "SSP1_111" ||
164  stepperType == "IMEX RK SSP2" || stepperType == "IMEX RK SSP3" ||
165  stepperType == "SSP3_332" || stepperType == "SSP2_222" ||
166  stepperType == "SSP2_222_L" || stepperType == "SSP2_222_A" ||
167  stepperType == "IMEX RK ARS 233" || stepperType == "ARS 233" ||
168  stepperType == "General IMEX RK")
169  return createStepperIMEX_RK(model, stepperType, stepperPL);
170  else if (stepperType == "Partitioned IMEX RK 1st order" ||
171  stepperType == "Partitioned IMEX RK SSP2" ||
172  stepperType == "Partitioned IMEX RK ARS 233" ||
173  stepperType == "General Partitioned IMEX RK")
174  return createStepperIMEX_RK_Partition(model, stepperType, stepperPL);
175  else if (stepperType == "Leapfrog")
176  return createStepperLeapfrog(model, stepperPL);
177  else if (stepperType == "Subcycling")
178  return createStepperSubcycling(model, stepperPL);
179  else {
182  out->setOutputToRootOnly(0);
183  Teuchos::OSTab ostab(out, 1, "StepperFactory::createStepper");
184  *out << "Unknown Stepper Type! ('" + stepperType + "').\n"
185  << "Here is a list of available Steppers.\n"
186  << " One-Step Methods:\n"
187  << " 'Forward Euler'\n"
188  << " 'Backward Euler'\n"
189  << " 'Trapezoidal Method'\n"
190  << " Multi-Step Methods:\n"
191  << " 'BDF2'\n"
192  << " Second-order PDE Methods:\n"
193  << " 'Leapfrog'\n"
194  << " 'Newmark Implicit a-Form'\n"
195  << " 'Newmark Implicit d-Form'\n"
196  << " 'Newmark Explicit a-Form'\n"
197  << " 'HHT-Alpha'\n"
198  << " Explicit Runge-Kutta Methods:\n"
199  << " 'RK Forward Euler (RK1)'\n"
200  << " 'RK Explicit 4 Stage'\n"
201  << " 'RK Explicit 3/8 Rule'\n"
202  << " 'RK Explicit 4 Stage 3rd order by Runge'\n"
203  << " 'RK Explicit 5 Stage 3rd order by Kinnmark and Gray'\n"
204  << " 'RK Explicit 3 Stage 3rd order'\n"
205  << " 'RK Explicit 3 Stage 3rd order TVD'\n"
206  << " 'RK Explicit 3 Stage 3rd order by Heun'\n"
207  << " 'RK Explicit Midpoint'\n"
208  << " 'RK Explicit Trapezoidal' or 'Heuns Method'\n"
209  << " 'Bogacki-Shampine 3(2) Pair'\n"
210  << " 'SSPERK22 (SSPRK2)'\n"
211  << " 'SSPERK33 (SSPRK3)'\n"
212  << " 'SSPERK54'\n"
213  << " 'General ERK'\n"
214  << " Implicit Runge-Kutta Methods:\n"
215  << " 'RK Backward Euler'\n"
216  << " 'DIRK 1 Stage Theta Method'\n"
217  << " 'RK Implicit Midpoint'\n"
218  << " 'SDIRK 1 Stage 1st order'\n"
219  << " 'SDIRK 2 Stage 2nd order'\n"
220  << " 'SDIRK 2 Stage 3rd order'\n"
221  << " 'EDIRK 2 Stage 3rd order'\n"
222  << " 'EDIRK 2 Stage Theta Method'\n"
223  << " 'SDIRK 3 Stage 4th order'\n"
224  << " 'SDIRK 5 Stage 4th order'\n"
225  << " 'SDIRK 5 Stage 5th order'\n"
226  << " 'SSPDIRK22'\n"
227  << " 'SSPDIRK32'\n"
228  << " 'SSPDIRK23'\n"
229  << " 'SSPDIRK33'\n"
230  << " 'SDIRK 2(1) Pair'\n"
231  << " 'SDIRK 3 Stage 2nd order'\n"
232  << " 'RK Trapezoidal Rule' or 'RK Crank-Nicolson'\n"
233  << " 'General DIRK'\n"
234  << " Implicit-Explicit (IMEX) Methods:\n"
235  << " 'IMEX RK 1st order'\n"
236  << " 'SSP1_111'\n"
237  << " 'IMEX RK SSP2 (SSP2_222)'\n"
238  << " 'IMEX RK SSP3 (SSP3_332)'\n"
239  << " 'IMEX RK ARS 233'\n"
240  << " 'General IMEX RK'\n"
241  << " 'Partitioned IMEX RK 1st order'\n"
242  << " 'Partitioned IMEX RK SSP2'\n"
243  << " 'Partitioned IMEX RK ARS 233'\n"
244  << " 'General Partitioned IMEX RK'\n"
245  << " Steppers with subSteppers:\n"
246  << " 'Operator Split'\n"
247  << std::endl;
248  TEUCHOS_TEST_FOR_EXCEPTION(true, std::logic_error,
249  "Unknown 'Stepper Type' = " << stepperType);
250  }
251 }
252 
253 } // namespace Tempus
254 #endif // Tempus_StepperFactory_impl_hpp
Teuchos::RCP< StepperEDIRK_TrapezoidalRule< Scalar > > createStepperEDIRK_TrapezoidalRule(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperNewmarkImplicitAForm< Scalar > > createStepperNewmarkImplicitAForm(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperLeapfrog< Scalar > > createStepperLeapfrog(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperSDIRK_SSPDIRK33< Scalar > > createStepperSDIRK_SSPDIRK33(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperEDIRK_2Stage3rdOrder< Scalar > > createStepperEDIRK_2Stage3rdOrder(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperSDIRK_5Stage4thOrder< Scalar > > createStepperSDIRK_5Stage4thOrder(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
T & get(const std::string &name, T def_value)
Teuchos::RCP< StepperERK_SSPERK54< Scalar > > createStepperERK_SSPERK54(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperERK_3Stage3rdOrderHeun< Scalar > > createStepperERK_3Stage3rdOrderHeun(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperERK_Merson45< Scalar > > createStepperERK_Merson45(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperEDIRK_2StageTheta< Scalar > > createStepperEDIRK_2StageTheta(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperNewmarkImplicitDForm< Scalar > > createStepperNewmarkImplicitDForm(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar >> &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
Teuchos::RCP< StepperSubcycling< Scalar > > createStepperSubcycling(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperERK_3_8Rule< Scalar > > createStepperERK_3_8Rule(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperERK_BogackiShampine32< Scalar > > createStepperERK_BogackiShampine32(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperSDIRK_5Stage5thOrder< Scalar > > createStepperSDIRK_5Stage5thOrder(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperERK_3Stage3rdOrder< Scalar > > createStepperERK_3Stage3rdOrder(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperDIRK_2Stage2ndOrderLobattoIIIB< Scalar > > createStepperDIRK_2Stage2ndOrderLobattoIIIB(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperERK_ForwardEuler< Scalar > > createStepperERK_ForwardEuler(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperSDIRK_21Pair< Scalar > > createStepperSDIRK_21Pair(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperSDIRK_SSPDIRK23< Scalar > > createStepperSDIRK_SSPDIRK23(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperERK_3Stage3rdOrderTVD< Scalar > > createStepperERK_3Stage3rdOrderTVD(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperSDIRK_3Stage4thOrder< Scalar > > createStepperSDIRK_3Stage4thOrder(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperForwardEuler< Scalar > > createStepperForwardEuler(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperTrapezoidal< Scalar > > createStepperTrapezoidal(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< Stepper< Scalar > > createStepper(std::string stepperType="Forward Euler", const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model=Teuchos::null)
Create stepper from stepper type.
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
Teuchos::RCP< StepperDIRK_1Stage1stOrderRadauIA< Scalar > > createStepperDIRK_1Stage1stOrderRadauIA(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
static RCP< FancyOStream > getDefaultOStream()
Teuchos::RCP< StepperSDIRK_3Stage2ndOrder< Scalar > > createStepperSDIRK_3Stage2ndOrder(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperERK_5Stage3rdOrderKandG< Scalar > > createStepperERK_5Stage3rdOrderKandG(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
basic_FancyOStream & setOutputToRootOnly(const int rootRank)
Teuchos::RCP< StepperDIRK_BackwardEuler< Scalar > > createStepperDIRK_BackwardEuler(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperSDIRK_2Stage3rdOrder< Scalar > > createStepperSDIRK_2Stage3rdOrder(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperERK_Midpoint< Scalar > > createStepperERK_Midpoint(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperHHTAlpha< Scalar > > createStepperHHTAlpha(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperSDIRK_SSPDIRK22< Scalar > > createStepperSDIRK_SSPDIRK22(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperERK_Trapezoidal< Scalar > > createStepperERK_Trapezoidal(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperOperatorSplit< Scalar > > createStepperOperatorSplit(std::vector< Teuchos::RCP< const Thyra::ModelEvaluator< Scalar >>> appModels, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperSDIRK_ImplicitMidpoint< Scalar > > createStepperSDIRK_ImplicitMidpoint(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperERK_General< Scalar > > createStepperERK_General(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperBDF2< Scalar > > createStepperBDF2(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperBackwardEuler< Scalar > > createStepperBackwardEuler(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperSDIRK_2Stage2ndOrder< Scalar > > createStepperSDIRK_2Stage2ndOrder(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperNewmarkExplicitAForm< Scalar > > createStepperNewmarkExplicitAForm(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperIMEX_RK_Partition< Scalar > > createStepperIMEX_RK_Partition(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, std::string stepperType, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperERK_Ralston< Scalar > > createStepperERK_Ralston(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperIMEX_RK< Scalar > > createStepperIMEX_RK(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, std::string stepperType, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperERK_4Stage4thOrder< Scalar > > createStepperERK_4Stage4thOrder(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperSDIRK_SSPDIRK32< Scalar > > createStepperSDIRK_SSPDIRK32(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperDIRK_1StageTheta< Scalar > > createStepperDIRK_1StageTheta(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperERK_4Stage3rdOrderRunge< Scalar > > createStepperERK_4Stage3rdOrderRunge(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Teuchos::RCP< StepperDIRK_General< Scalar > > createStepperDIRK_General(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.