Tempus
Version of the Day
Time Integration
Toggle main menu visibility
Loading...
Searching...
No Matches
src
Tempus_TimeStepControlStrategy.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_TimeStepControlStrategy_hpp
10
#define Tempus_TimeStepControlStrategy_hpp
11
12
#include "Tempus_config.hpp"
13
#include "Tempus_SolutionHistory.hpp"
14
15
16
namespace
Tempus
{
17
18
template
<
class
Scalar>
class
TimeStepControl
;
19
30
template
<
class
Scalar>
31
class
TimeStepControlStrategy
32
:
virtual
public
Teuchos::Describable,
33
virtual
public
Teuchos::VerboseObject<Tempus::TimeStepControlStrategy<Scalar> >
34
{
35
public
:
36
38
TimeStepControlStrategy
()
39
:
strategyType_
(
"Base Strategy"
),
stepType_
(
"Constant"
),
40
name_
(
"Base Strategy"
),
isInitialized_
(false)
41
{}
42
44
virtual
~TimeStepControlStrategy
(){}
45
47
virtual
void
setNextTimeStep
(
48
const
TimeStepControl<Scalar>
&
/* tsc */
,
49
Teuchos::RCP<
SolutionHistory<Scalar>
>
/* sh */
,
50
Status
&
/* integratorStatus */
) {}
51
52
virtual
void
initialize
()
const
{
isInitialized_
=
true
; }
53
virtual
bool
isInitialized
() {
return
isInitialized_
; }
54
virtual
void
checkInitialized
()
55
{
56
if
( !
isInitialized_
) {
57
this->describe( *(this->getOStream()), Teuchos::VERB_MEDIUM);
58
TEUCHOS_TEST_FOR_EXCEPTION( !
isInitialized_
, std::logic_error,
59
"Error - "
<< this->description() <<
" is not initialized!"
);
60
}
61
}
62
63
virtual
void
setName
(std::string s) {
name_
= s; }
64
65
virtual
std::string
getStrategyType
()
const
{
return
strategyType_
; }
66
virtual
std::string
getStepType
()
const
{
return
stepType_
; }
67
virtual
std::string
getName
()
const
{
return
name_
; }
68
70
virtual
Teuchos::RCP<const Teuchos::ParameterList>
getValidParameters
()
const
71
{
return
Teuchos::parameterList(); }
72
73
protected
:
74
75
virtual
void
setStrategyType
(std::string s) {
strategyType_
= s; }
76
virtual
void
setStepType
(std::string s) {
stepType_
= s; }
77
78
std::string
strategyType_
;
79
std::string
stepType_
;
80
std::string
name_
;
81
mutable
bool
isInitialized_
;
82
83
};
84
85
86
}
// namespace Tempus
87
#endif
// Tempus_TimeStepControlStrategy_hpp
Tempus::SolutionHistory
SolutionHistory is basically a container of SolutionStates. SolutionHistory maintains a collection of...
Definition
Tempus_SolutionHistory_decl.hpp:121
Tempus::TimeStepControlStrategy::name_
std::string name_
Name of strategy.
Definition
Tempus_TimeStepControlStrategy.hpp:80
Tempus::TimeStepControlStrategy::getName
virtual std::string getName() const
Definition
Tempus_TimeStepControlStrategy.hpp:67
Tempus::TimeStepControlStrategy::setStrategyType
virtual void setStrategyType(std::string s)
Definition
Tempus_TimeStepControlStrategy.hpp:75
Tempus::TimeStepControlStrategy::isInitialized
virtual bool isInitialized()
Definition
Tempus_TimeStepControlStrategy.hpp:53
Tempus::TimeStepControlStrategy::checkInitialized
virtual void checkInitialized()
Definition
Tempus_TimeStepControlStrategy.hpp:54
Tempus::TimeStepControlStrategy::isInitialized_
bool isInitialized_
Bool if strategy is initialized.
Definition
Tempus_TimeStepControlStrategy.hpp:81
Tempus::TimeStepControlStrategy::getValidParameters
virtual Teuchos::RCP< const Teuchos::ParameterList > getValidParameters() const
Return ParameterList with current values.
Definition
Tempus_TimeStepControlStrategy.hpp:70
Tempus::TimeStepControlStrategy::strategyType_
std::string strategyType_
Strategy type.
Definition
Tempus_TimeStepControlStrategy.hpp:78
Tempus::TimeStepControlStrategy::stepType_
std::string stepType_
Step Type - "Constant" or "Variable".
Definition
Tempus_TimeStepControlStrategy.hpp:79
Tempus::TimeStepControlStrategy::initialize
virtual void initialize() const
Definition
Tempus_TimeStepControlStrategy.hpp:52
Tempus::TimeStepControlStrategy::setStepType
virtual void setStepType(std::string s)
Definition
Tempus_TimeStepControlStrategy.hpp:76
Tempus::TimeStepControlStrategy::~TimeStepControlStrategy
virtual ~TimeStepControlStrategy()
Destructor.
Definition
Tempus_TimeStepControlStrategy.hpp:44
Tempus::TimeStepControlStrategy::getStrategyType
virtual std::string getStrategyType() const
Definition
Tempus_TimeStepControlStrategy.hpp:65
Tempus::TimeStepControlStrategy::setName
virtual void setName(std::string s)
Definition
Tempus_TimeStepControlStrategy.hpp:63
Tempus::TimeStepControlStrategy::setNextTimeStep
virtual void setNextTimeStep(const TimeStepControl< Scalar > &, Teuchos::RCP< SolutionHistory< Scalar > >, Status &)
Set the time step size.
Definition
Tempus_TimeStepControlStrategy.hpp:47
Tempus::TimeStepControlStrategy::getStepType
virtual std::string getStepType() const
Definition
Tempus_TimeStepControlStrategy.hpp:66
Tempus::TimeStepControlStrategy::TimeStepControlStrategy
TimeStepControlStrategy()
Constructor.
Definition
Tempus_TimeStepControlStrategy.hpp:38
Tempus::TimeStepControl
TimeStepControl manages the time step size. There several mechanisms that effect the time step size a...
Definition
Tempus_TimeStepControl_decl.hpp:53
Tempus
Definition
Tempus_AdjointAuxSensitivityModelEvaluator_decl.hpp:21
Tempus::Status
Status
Status for the Integrator, the Stepper and the SolutionState.
Definition
Tempus_Types.hpp:19
Generated by
1.17.0