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_StepperForwardEuler_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_StepperForwardEuler_decl_hpp
10
#define Tempus_StepperForwardEuler_decl_hpp
11
12
#include "Tempus_config.hpp"
13
#include "Tempus_StepperExplicit.hpp"
14
#include "
Tempus_StepperForwardEulerAppAction.hpp
"
15
16
namespace
Tempus {
17
75
template
<
class
Scalar>
76
class
StepperForwardEuler
:
virtual
public
Tempus::StepperExplicit
<Scalar> {
77
public
:
83
StepperForwardEuler
();
84
86
StepperForwardEuler
(
87
const
Teuchos::RCP
<
const
Thyra::ModelEvaluator<Scalar>
>& appModel,
88
bool
useFSAL, std::string ICConsistency,
bool
ICConsistencyCheck,
89
const
Teuchos::RCP
<
StepperForwardEulerAppAction<Scalar>
>&
90
stepperFEAppAction);
91
92
virtual
void
setAppAction
(
93
Teuchos::RCP
<
StepperForwardEulerAppAction<Scalar>
> appAction);
94
95
virtual
Teuchos::RCP<StepperForwardEulerAppAction<Scalar>
>
getAppAction
()
96
const
97
{
98
return
stepperFEAppAction_
;
99
}
100
102
virtual
void
setInitialConditions
(
103
const
Teuchos::RCP
<
SolutionHistory<Scalar>
>& solutionHistory);
104
106
virtual
void
takeStep
(
107
const
Teuchos::RCP
<
SolutionHistory<Scalar>
>& solutionHistory);
108
110
virtual
Teuchos::RCP<Tempus::StepperState<Scalar>
>
getDefaultStepperState
();
111
virtual
Scalar
getOrder
()
const
{
return
1.0; }
112
virtual
Scalar
getOrderMin
()
const
{
return
1.0; }
113
virtual
Scalar
getOrderMax
()
const
{
return
1.0; }
114
virtual
void
setUseFSAL
(
bool
a)
115
{
116
this->
useFSAL_
= a;
117
this->
isInitialized_
=
false
;
118
}
119
virtual
OrderODE
getOrderODE
()
const
{
return
FIRST_ORDER_ODE
; }
121
123
124
virtual
void
describe
(
Teuchos::FancyOStream
& out,
125
const
Teuchos::EVerbosityLevel
verbLevel)
const
;
127
128
virtual
bool
isValidSetup
(
Teuchos::FancyOStream
& out)
const
;
129
130
protected
:
131
Teuchos::RCP<StepperForwardEulerAppAction<Scalar>
>
stepperFEAppAction_
;
132
};
133
135
// ------------------------------------------------------------------------
136
template
<
class
Scalar>
137
Teuchos::RCP<StepperForwardEuler<Scalar>
>
createStepperForwardEuler
(
138
const
Teuchos::RCP
<
const
Thyra::ModelEvaluator<Scalar>
>& model,
139
Teuchos::RCP<Teuchos::ParameterList>
pl);
140
141
}
// namespace Tempus
142
143
#endif // Tempus_StepperForwardEuler_decl_hpp
Tempus::StepperForwardEuler::setUseFSAL
virtual void setUseFSAL(bool a)
Definition:
Tempus_StepperForwardEuler_decl.hpp:114
Thyra::ModelEvaluator
Tempus::StepperForwardEuler::getOrder
virtual Scalar getOrder() const
Definition:
Tempus_StepperForwardEuler_decl.hpp:111
Tempus::StepperForwardEuler::describe
virtual void describe(Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const
Definition:
Tempus_StepperForwardEuler_impl.hpp:187
Tempus::StepperForwardEuler::setInitialConditions
virtual void setInitialConditions(const Teuchos::RCP< SolutionHistory< Scalar > > &solutionHistory)
Set the initial conditions, make them consistent, and set needed memory.
Definition:
Tempus_StepperForwardEuler_impl.hpp:64
Tempus::StepperForwardEuler::getAppAction
virtual Teuchos::RCP< StepperForwardEulerAppAction< Scalar > > getAppAction() const
Definition:
Tempus_StepperForwardEuler_decl.hpp:95
Tempus::StepperForwardEuler::getOrderMin
virtual Scalar getOrderMin() const
Definition:
Tempus_StepperForwardEuler_decl.hpp:112
Tempus::StepperForwardEuler
Forward Euler time stepper.
Definition:
Tempus_StepperForwardEuler_decl.hpp:76
Tempus::OrderODE
OrderODE
Definition:
Tempus_Stepper_decl.hpp:22
Teuchos::EVerbosityLevel
EVerbosityLevel
Tempus::Stepper::isInitialized_
bool isInitialized_
True if stepper's member data is initialized.
Definition:
Tempus_Stepper_decl.hpp:243
Tempus::StepperForwardEuler::getOrderMax
virtual Scalar getOrderMax() const
Definition:
Tempus_StepperForwardEuler_decl.hpp:113
Tempus_StepperForwardEulerAppAction.hpp
Tempus::createStepperForwardEuler
Teuchos::RCP< StepperForwardEuler< Scalar > > createStepperForwardEuler(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
Definition:
Tempus_StepperForwardEuler_impl.hpp:220
Tempus::Stepper::useFSAL_
bool useFSAL_
Use First-Same-As-Last (FSAL) principle.
Definition:
Tempus_Stepper_decl.hpp:242
Teuchos::basic_FancyOStream
Tempus::StepperForwardEuler::getOrderODE
virtual OrderODE getOrderODE() const
Definition:
Tempus_StepperForwardEuler_decl.hpp:119
Tempus::StepperForwardEulerAppAction
Application Action for StepperForwardEuler.
Definition:
Tempus_StepperForwardEulerAppAction.hpp:34
Tempus::SolutionHistory
SolutionHistory is basically a container of SolutionStates. SolutionHistory maintains a collection of...
Definition:
Tempus_Integrator.hpp:27
Tempus::StepperForwardEuler::getDefaultStepperState
virtual Teuchos::RCP< Tempus::StepperState< Scalar > > getDefaultStepperState()
Get a default (initial) StepperState.
Definition:
Tempus_StepperForwardEuler_impl.hpp:179
Tempus::StepperForwardEuler::isValidSetup
virtual bool isValidSetup(Teuchos::FancyOStream &out) const
Definition:
Tempus_StepperForwardEuler_impl.hpp:202
Tempus::FIRST_ORDER_ODE
Stepper integrates first-order ODEs.
Definition:
Tempus_Stepper_decl.hpp:23
Tempus::StepperForwardEuler::setAppAction
virtual void setAppAction(Teuchos::RCP< StepperForwardEulerAppAction< Scalar > > appAction)
Definition:
Tempus_StepperForwardEuler_impl.hpp:50
Teuchos::RCP
Tempus::StepperForwardEuler::StepperForwardEuler
StepperForwardEuler()
Default constructor.
Definition:
Tempus_StepperForwardEuler_impl.hpp:19
Tempus::StepperForwardEuler::takeStep
virtual void takeStep(const Teuchos::RCP< SolutionHistory< Scalar > > &solutionHistory)
Take the specified timestep, dt, and return true if successful.
Definition:
Tempus_StepperForwardEuler_impl.hpp:81
Tempus::StepperForwardEuler::stepperFEAppAction_
Teuchos::RCP< StepperForwardEulerAppAction< Scalar > > stepperFEAppAction_
Definition:
Tempus_StepperForwardEuler_decl.hpp:131
Tempus::StepperExplicit
Thyra Base interface for implicit time steppers.
Definition:
Tempus_StepperExplicit_decl.hpp:38
Generated on Thu Apr 18 2024 09:25:06 for Tempus by
1.8.5