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: 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_StepperForwardEuler_decl_hpp
11
#define Tempus_StepperForwardEuler_decl_hpp
12
13
#include "Tempus_config.hpp"
14
#include "Tempus_StepperExplicit.hpp"
15
#include "
Tempus_StepperForwardEulerAppAction.hpp
"
16
17
namespace
Tempus {
18
76
template
<
class
Scalar>
77
class
StepperForwardEuler
:
virtual
public
Tempus::StepperExplicit
<Scalar> {
78
public
:
84
StepperForwardEuler
();
85
87
StepperForwardEuler
(
88
const
Teuchos::RCP
<
const
Thyra::ModelEvaluator<Scalar>
>& appModel,
89
bool
useFSAL, std::string ICConsistency,
bool
ICConsistencyCheck,
90
const
Teuchos::RCP
<
StepperForwardEulerAppAction<Scalar>
>&
91
stepperFEAppAction);
92
93
virtual
void
setAppAction
(
94
Teuchos::RCP
<
StepperForwardEulerAppAction<Scalar>
> appAction);
95
96
virtual
Teuchos::RCP<StepperForwardEulerAppAction<Scalar>
>
getAppAction
()
97
const
98
{
99
return
stepperFEAppAction_
;
100
}
101
103
virtual
void
setInitialConditions
(
104
const
Teuchos::RCP
<
SolutionHistory<Scalar>
>& solutionHistory);
105
107
virtual
void
takeStep
(
108
const
Teuchos::RCP
<
SolutionHistory<Scalar>
>& solutionHistory);
109
111
virtual
Teuchos::RCP<Tempus::StepperState<Scalar>
>
getDefaultStepperState
();
112
virtual
Scalar
getOrder
()
const
{
return
1.0; }
113
virtual
Scalar
getOrderMin
()
const
{
return
1.0; }
114
virtual
Scalar
getOrderMax
()
const
{
return
1.0; }
115
virtual
void
setUseFSAL
(
bool
a)
116
{
117
this->
useFSAL_
= a;
118
this->
isInitialized_
=
false
;
119
}
120
virtual
OrderODE
getOrderODE
()
const
{
return
FIRST_ORDER_ODE
; }
122
124
125
virtual
void
describe
(
Teuchos::FancyOStream
& out,
126
const
Teuchos::EVerbosityLevel
verbLevel)
const
;
128
129
virtual
bool
isValidSetup
(
Teuchos::FancyOStream
& out)
const
;
130
131
protected
:
132
Teuchos::RCP<StepperForwardEulerAppAction<Scalar>
>
stepperFEAppAction_
;
133
};
134
136
// ------------------------------------------------------------------------
137
template
<
class
Scalar>
138
Teuchos::RCP<StepperForwardEuler<Scalar>
>
createStepperForwardEuler
(
139
const
Teuchos::RCP
<
const
Thyra::ModelEvaluator<Scalar>
>& model,
140
Teuchos::RCP<Teuchos::ParameterList>
pl);
141
142
}
// namespace Tempus
143
144
#endif // Tempus_StepperForwardEuler_decl_hpp
Tempus::StepperForwardEuler::setUseFSAL
virtual void setUseFSAL(bool a)
Definition:
Tempus_StepperForwardEuler_decl.hpp:115
Thyra::ModelEvaluator
Tempus::StepperForwardEuler::getOrder
virtual Scalar getOrder() const
Definition:
Tempus_StepperForwardEuler_decl.hpp:112
Tempus::StepperForwardEuler::describe
virtual void describe(Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const
Definition:
Tempus_StepperForwardEuler_impl.hpp:188
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:65
Tempus::StepperForwardEuler::getAppAction
virtual Teuchos::RCP< StepperForwardEulerAppAction< Scalar > > getAppAction() const
Definition:
Tempus_StepperForwardEuler_decl.hpp:96
Tempus::StepperForwardEuler::getOrderMin
virtual Scalar getOrderMin() const
Definition:
Tempus_StepperForwardEuler_decl.hpp:113
Tempus::StepperForwardEuler
Forward Euler time stepper.
Definition:
Tempus_StepperForwardEuler_decl.hpp:77
Tempus::OrderODE
OrderODE
Definition:
Tempus_Stepper_decl.hpp:23
Teuchos::EVerbosityLevel
EVerbosityLevel
Tempus::Stepper::isInitialized_
bool isInitialized_
True if stepper's member data is initialized.
Definition:
Tempus_Stepper_decl.hpp:244
Tempus::StepperForwardEuler::getOrderMax
virtual Scalar getOrderMax() const
Definition:
Tempus_StepperForwardEuler_decl.hpp:114
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:221
Tempus::Stepper::useFSAL_
bool useFSAL_
Use First-Same-As-Last (FSAL) principle.
Definition:
Tempus_Stepper_decl.hpp:243
Teuchos::basic_FancyOStream
Tempus::StepperForwardEuler::getOrderODE
virtual OrderODE getOrderODE() const
Definition:
Tempus_StepperForwardEuler_decl.hpp:120
Tempus::StepperForwardEulerAppAction
Application Action for StepperForwardEuler.
Definition:
Tempus_StepperForwardEulerAppAction.hpp:35
Tempus::SolutionHistory
SolutionHistory is basically a container of SolutionStates. SolutionHistory maintains a collection of...
Definition:
Tempus_Integrator.hpp:28
Tempus::StepperForwardEuler::getDefaultStepperState
virtual Teuchos::RCP< Tempus::StepperState< Scalar > > getDefaultStepperState()
Get a default (initial) StepperState.
Definition:
Tempus_StepperForwardEuler_impl.hpp:180
Tempus::StepperForwardEuler::isValidSetup
virtual bool isValidSetup(Teuchos::FancyOStream &out) const
Definition:
Tempus_StepperForwardEuler_impl.hpp:203
Tempus::FIRST_ORDER_ODE
Stepper integrates first-order ODEs.
Definition:
Tempus_Stepper_decl.hpp:24
Tempus::StepperForwardEuler::setAppAction
virtual void setAppAction(Teuchos::RCP< StepperForwardEulerAppAction< Scalar > > appAction)
Definition:
Tempus_StepperForwardEuler_impl.hpp:51
Teuchos::RCP
Tempus::StepperForwardEuler::StepperForwardEuler
StepperForwardEuler()
Default constructor.
Definition:
Tempus_StepperForwardEuler_impl.hpp:20
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:82
Tempus::StepperForwardEuler::stepperFEAppAction_
Teuchos::RCP< StepperForwardEulerAppAction< Scalar > > stepperFEAppAction_
Definition:
Tempus_StepperForwardEuler_decl.hpp:132
Tempus::StepperExplicit
Thyra Base interface for implicit time steppers.
Definition:
Tempus_StepperExplicit_decl.hpp:39
Generated on Fri Nov 22 2024 09:23:26 for Tempus by
1.8.5