Tempus
Version of the Day
Time Integration
Toggle main menu visibility
Loading...
Searching...
No Matches
src
Tempus_StepperLeapfrog_decl.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_StepperLeapfrog_decl_hpp
10
#define Tempus_StepperLeapfrog_decl_hpp
11
12
#include "Tempus_config.hpp"
13
#include "Tempus_StepperExplicit.hpp"
14
#include "
Tempus_StepperLeapfrogAppAction.hpp
"
15
#include "
Tempus_StepperLeapfrogAppActionComposite.hpp
"
16
17
18
namespace
Tempus
{
19
95
template
<
class
Scalar>
96
class
StepperLeapfrog
:
virtual
public
Tempus::StepperExplicit
<Scalar>
97
{
98
public
:
99
105
StepperLeapfrog
();
106
108
StepperLeapfrog
(
109
const
Teuchos::RCP<
const
Thyra::ModelEvaluator<Scalar>
>& appModel,
110
bool
useFSAL,
111
std::string ICConsistency,
112
bool
ICConsistencyCheck,
113
const
Teuchos::RCP<
StepperLeapfrogAppAction<Scalar>
>& stepperLFAppAction);
114
116
117
virtual
void
setAppAction
(
118
Teuchos::RCP<
StepperLeapfrogAppAction<Scalar>
> appAction);
119
120
virtual
Teuchos::RCP<StepperLeapfrogAppAction<Scalar> >
getAppAction
()
const
121
{
return
stepperLFAppAction_
; }
122
124
virtual
void
setInitialConditions
(
125
const
Teuchos::RCP<
SolutionHistory<Scalar>
>& solutionHistory);
126
128
virtual
void
takeStep
(
129
const
Teuchos::RCP<
SolutionHistory<Scalar>
>& solutionHistory);
130
132
virtual
Teuchos::RCP<Tempus::StepperState<Scalar> >
getDefaultStepperState
();
133
virtual
Scalar
getOrder
()
const
{
return
2.0;}
134
virtual
Scalar
getOrderMin
()
const
{
return
2.0;}
135
virtual
Scalar
getOrderMax
()
const
{
return
2.0;}
136
virtual
Scalar
getInitTimeStep
(
137
const
Teuchos::RCP<
SolutionHistory<Scalar>
>&
/* solutionHistory */
)
const
138
{
return
Scalar(1.0e+99);}
139
140
virtual
bool
isExplicit
()
const
{
return
true
;}
141
virtual
bool
isImplicit
()
const
{
return
false
;}
142
virtual
bool
isExplicitImplicit
()
const
143
{
return
isExplicit
() &&
isImplicit
();}
144
virtual
bool
isOneStepMethod
()
const
{
return
true
;}
145
virtual
bool
isMultiStepMethod
()
const
{
return
!
isOneStepMethod
();}
146
virtual
OrderODE
getOrderODE
()
const
{
return
SECOND_ORDER_ODE
;}
148
150
151
virtual
void
describe
(Teuchos::FancyOStream & out,
152
const
Teuchos::EVerbosityLevel verbLevel)
const
;
154
155
virtual
bool
isValidSetup
(Teuchos::FancyOStream & out)
const
;
156
157
protected
:
158
159
Teuchos::RCP<StepperLeapfrogAppAction<Scalar> >
stepperLFAppAction_
;
160
161
};
162
163
165
// ------------------------------------------------------------------------
166
template
<
class
Scalar>
167
Teuchos::RCP<StepperLeapfrog<Scalar> >
168
createStepperLeapfrog
(
169
const
Teuchos::RCP<
const
Thyra::ModelEvaluator<Scalar>
>& model,
170
Teuchos::RCP<Teuchos::ParameterList> pl);
171
172
173
}
// namespace Tempus
174
175
#endif
// Tempus_StepperLeapfrog_decl_hpp
Tempus_StepperLeapfrogAppActionComposite.hpp
Tempus_StepperLeapfrogAppAction.hpp
Tempus::SolutionHistory
SolutionHistory is basically a container of SolutionStates. SolutionHistory maintains a collection of...
Definition
Tempus_SolutionHistory_decl.hpp:121
Tempus::StepperExplicit
Thyra Base interface for implicit time steppers.
Definition
Tempus_StepperExplicit_decl.hpp:44
Tempus::StepperLeapfrogAppAction
Application Action for StepperLeapfrog.
Definition
Tempus_StepperLeapfrogAppAction.hpp:35
Tempus::StepperLeapfrog::getDefaultStepperState
virtual Teuchos::RCP< Tempus::StepperState< Scalar > > getDefaultStepperState()
Get a default (initial) StepperState.
Definition
Tempus_StepperLeapfrog_impl.hpp:179
Tempus::StepperLeapfrog::isExplicit
virtual bool isExplicit() const
Definition
Tempus_StepperLeapfrog_decl.hpp:140
Tempus::StepperLeapfrog::isMultiStepMethod
virtual bool isMultiStepMethod() const
Definition
Tempus_StepperLeapfrog_decl.hpp:145
Tempus::StepperLeapfrog::describe
virtual void describe(Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const
Definition
Tempus_StepperLeapfrog_impl.hpp:188
Tempus::StepperLeapfrog::takeStep
virtual void takeStep(const Teuchos::RCP< SolutionHistory< Scalar > > &solutionHistory)
Take the specified timestep, dt, and return true if successful.
Definition
Tempus_StepperLeapfrog_impl.hpp:97
Tempus::StepperLeapfrog::setAppAction
virtual void setAppAction(Teuchos::RCP< StepperLeapfrogAppAction< Scalar > > appAction)
Definition
Tempus_StepperLeapfrog_impl.hpp:55
Tempus::StepperLeapfrog::getInitTimeStep
virtual Scalar getInitTimeStep(const Teuchos::RCP< SolutionHistory< Scalar > > &) const
Definition
Tempus_StepperLeapfrog_decl.hpp:136
Tempus::StepperLeapfrog::getOrderODE
virtual OrderODE getOrderODE() const
Definition
Tempus_StepperLeapfrog_decl.hpp:146
Tempus::StepperLeapfrog::getOrder
virtual Scalar getOrder() const
Definition
Tempus_StepperLeapfrog_decl.hpp:133
Tempus::StepperLeapfrog::isImplicit
virtual bool isImplicit() const
Definition
Tempus_StepperLeapfrog_decl.hpp:141
Tempus::StepperLeapfrog::isOneStepMethod
virtual bool isOneStepMethod() const
Definition
Tempus_StepperLeapfrog_decl.hpp:144
Tempus::StepperLeapfrog::stepperLFAppAction_
Teuchos::RCP< StepperLeapfrogAppAction< Scalar > > stepperLFAppAction_
Definition
Tempus_StepperLeapfrog_decl.hpp:159
Tempus::StepperLeapfrog::getAppAction
virtual Teuchos::RCP< StepperLeapfrogAppAction< Scalar > > getAppAction() const
Definition
Tempus_StepperLeapfrog_decl.hpp:120
Tempus::StepperLeapfrog::getOrderMax
virtual Scalar getOrderMax() const
Definition
Tempus_StepperLeapfrog_decl.hpp:135
Tempus::StepperLeapfrog::isExplicitImplicit
virtual bool isExplicitImplicit() const
Definition
Tempus_StepperLeapfrog_decl.hpp:142
Tempus::StepperLeapfrog::getOrderMin
virtual Scalar getOrderMin() const
Definition
Tempus_StepperLeapfrog_decl.hpp:134
Tempus::StepperLeapfrog::StepperLeapfrog
StepperLeapfrog()
Default constructor.
Definition
Tempus_StepperLeapfrog_impl.hpp:21
Tempus::StepperLeapfrog::setInitialConditions
virtual void setInitialConditions(const Teuchos::RCP< SolutionHistory< Scalar > > &solutionHistory)
Set the initial conditions and make them consistent.
Definition
Tempus_StepperLeapfrog_impl.hpp:70
Tempus::StepperLeapfrog::isValidSetup
virtual bool isValidSetup(Teuchos::FancyOStream &out) const
Definition
Tempus_StepperLeapfrog_impl.hpp:205
Thyra::ModelEvaluator
Tempus
Definition
Tempus_AdjointAuxSensitivityModelEvaluator_decl.hpp:21
Tempus::createStepperLeapfrog
Teuchos::RCP< StepperLeapfrog< Scalar > > createStepperLeapfrog(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Definition
Tempus_StepperLeapfrog_impl.hpp:226
Tempus::OrderODE
OrderODE
Definition
Tempus_Stepper_decl.hpp:23
Tempus::SECOND_ORDER_ODE
@ SECOND_ORDER_ODE
Stepper integrates second-order ODEs.
Definition
Tempus_Stepper_decl.hpp:25
Generated by
1.17.0