Tempus
Version of the Day
Time Integration
Loading...
Searching...
No Matches
src
Tempus_StepperRKModifierXDefault.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_StepperRKModifierX_hpp
11
#define Tempus_StepperRKModifierX_hpp
12
13
#include "Tempus_config.hpp"
14
#include "
Tempus_StepperRKModifierXBase.hpp
"
15
16
namespace
Tempus
{
17
26
template
<
class
Scalar>
27
class
StepperRKModifierXDefault
28
:
virtual
public
Tempus::StepperRKModifierXBase
<Scalar> {
29
public
:
31
StepperRKModifierXDefault
() {}
32
34
virtual
~StepperRKModifierXDefault
() {}
35
37
virtual
void
modify
(
38
Teuchos::RCP<
Thyra::VectorBase<Scalar>
>
/* x */
,
const
Scalar
/* time */
,
39
const
Scalar
/* dt */
,
const
int
/* stageNumber */
,
40
const
typename
StepperRKModifierXBase<Scalar>::MODIFIER_TYPE
modType)
41
{
42
switch
(modType) {
43
case
StepperRKModifierXBase<Scalar>::X_BEGIN_STEP
:
44
case
StepperRKModifierXBase<Scalar>::X_BEGIN_STAGE
:
45
case
StepperRKModifierXBase<Scalar>::X_BEFORE_SOLVE
:
46
case
StepperRKModifierXBase<Scalar>::X_AFTER_SOLVE
:
47
case
StepperRKModifierXBase<Scalar>::X_BEFORE_EXPLICIT_EVAL
:
48
case
StepperRKModifierXBase<Scalar>::X_END_STAGE
:
49
case
StepperRKModifierXBase<Scalar>::X_END_STEP
: {
50
// No-op.
51
break
;
52
}
53
default
:
54
TEUCHOS_TEST_FOR_EXCEPTION(
true
, std::logic_error,
55
"Error - unknown modifier type.\n"
);
56
}
57
}
58
};
59
60
}
// namespace Tempus
61
62
#endif
// Tempus_StepperRKModifierX_hpp
Tempus_StepperRKModifierXBase.hpp
Tempus::StepperRKModifierXBase
Base ModifierX for StepperRK.
Definition
Tempus_StepperRKModifierXBase.hpp:41
Tempus::StepperRKModifierXBase::MODIFIER_TYPE
MODIFIER_TYPE
Indicates the location of application action (see algorithm).
Definition
Tempus_StepperRKModifierXBase.hpp:112
Tempus::StepperRKModifierXDefault
Default ModifierX for StepperRK.
Definition
Tempus_StepperRKModifierXDefault.hpp:28
Tempus::StepperRKModifierXDefault::~StepperRKModifierXDefault
virtual ~StepperRKModifierXDefault()
Destructor.
Definition
Tempus_StepperRKModifierXDefault.hpp:34
Tempus::StepperRKModifierXDefault::modify
virtual void modify(Teuchos::RCP< Thyra::VectorBase< Scalar > >, const Scalar, const Scalar, const int, const typename StepperRKModifierXBase< Scalar >::MODIFIER_TYPE modType)
Modify solution based on the MODIFIER_TYPE.
Definition
Tempus_StepperRKModifierXDefault.hpp:37
Tempus::StepperRKModifierXDefault::StepperRKModifierXDefault
StepperRKModifierXDefault()
Constructor.
Definition
Tempus_StepperRKModifierXDefault.hpp:31
Thyra::VectorBase
Tempus
Definition
Tempus_AdjointAuxSensitivityModelEvaluator_decl.hpp:22
Generated on Thu Oct 9 2025 20:59:09 for Tempus by
1.9.8