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_StepperOperatorSplitModifierXDefault.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_StepperOperatorSplitModifierXDefault_hpp
11
#define Tempus_StepperOperatorSplitModifierXDefault_hpp
12
13
#include "Tempus_config.hpp"
14
#include "
Tempus_StepperOperatorSplitModifierXBase.hpp
"
15
16
// Applications can uncomment this include in their implementation,
17
// if they need access to the stepper methods.
18
//#include "Tempus_StepperOperatorSplit.hpp"
19
20
namespace
Tempus {
21
30
template
<
class
Scalar>
31
class
StepperOperatorSplitModifierXDefault
32
:
virtual
public
Tempus::StepperOperatorSplitModifierXBase
<Scalar> {
33
public
:
35
StepperOperatorSplitModifierXDefault
() {}
36
38
virtual
~StepperOperatorSplitModifierXDefault
() {}
39
41
virtual
void
modify
(
42
Teuchos::RCP
<
Thyra::VectorBase<Scalar>
>
/* x */
,
const
Scalar
/* time */
,
43
const
Scalar
/* dt */
,
44
const
typename
StepperOperatorSplitModifierXBase<Scalar>::MODIFIER_TYPE
45
modType)
46
{
47
switch
(modType) {
48
case
StepperOperatorSplitModifierXBase<Scalar>::X_BEGIN_STEP
:
49
case
StepperOperatorSplitModifierXBase<Scalar>::X_BEFORE_STEPPER
:
50
case
StepperOperatorSplitModifierXBase<Scalar>::X_AFTER_STEPPER
:
51
case
StepperOperatorSplitModifierXBase<Scalar>::XDOT_END_STEP
: {
52
// No-op.
53
break
;
54
}
55
default
:
56
TEUCHOS_TEST_FOR_EXCEPTION
(
true
, std::logic_error,
57
"Error - unknown action location.\n"
);
58
}
59
}
60
};
61
62
}
// namespace Tempus
63
64
#endif // Tempus_StepperOperatorSplitModifierXDefault_hpp
Tempus::StepperOperatorSplitModifierXBase::MODIFIER_TYPE
MODIFIER_TYPE
Indicates the location of application action (see algorithm).
Definition:
Tempus_StepperOperatorSplitModifierXBase.hpp:102
Tempus::StepperOperatorSplitModifierXDefault::StepperOperatorSplitModifierXDefault
StepperOperatorSplitModifierXDefault()
Constructor.
Definition:
Tempus_StepperOperatorSplitModifierXDefault.hpp:35
TEUCHOS_TEST_FOR_EXCEPTION
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
Tempus::StepperOperatorSplitModifierXBase
Base ModifierX for StepperOperatorSplit.
Definition:
Tempus_StepperOperatorSplitModifierXBase.hpp:38
Tempus_StepperOperatorSplitModifierXBase.hpp
Tempus::StepperOperatorSplitModifierXDefault::modify
virtual void modify(Teuchos::RCP< Thyra::VectorBase< Scalar > >, const Scalar, const Scalar, const typename StepperOperatorSplitModifierXBase< Scalar >::MODIFIER_TYPE modType)
Modify OperatorSplit Stepper.
Definition:
Tempus_StepperOperatorSplitModifierXDefault.hpp:41
Thyra::VectorBase
Tempus::StepperOperatorSplitModifierXDefault::~StepperOperatorSplitModifierXDefault
virtual ~StepperOperatorSplitModifierXDefault()
Destructor.
Definition:
Tempus_StepperOperatorSplitModifierXDefault.hpp:38
Teuchos::RCP
Tempus::StepperOperatorSplitModifierXDefault
Default ModifierX for StepperOperatorSplit.
Definition:
Tempus_StepperOperatorSplitModifierXDefault.hpp:31
Generated on Thu Dec 26 2024 09:25:16 for Tempus by
1.8.5