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_StepperLeapfrogModifierXDefault.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_StepperLeapfrogModifierX_hpp
11
#define Tempus_StepperLeapfrogModifierX_hpp
12
13
#include "Tempus_config.hpp"
14
#include "Tempus_SolutionHistory.hpp"
15
#include "
Tempus_StepperLeapfrogModifierXBase.hpp
"
16
17
namespace
Tempus {
18
24
template
<
class
Scalar>
25
class
StepperLeapfrogModifierXDefault
26
:
virtual
public
Tempus::StepperLeapfrogModifierXBase
<Scalar> {
27
public
:
29
StepperLeapfrogModifierXDefault
() {}
30
32
virtual
~StepperLeapfrogModifierXDefault
() {}
33
35
virtual
void
modify
(
36
Teuchos::RCP
<
Thyra::VectorBase<Scalar>
>
/* x */
,
const
Scalar
/* time */
,
37
const
Scalar
/* dt */
,
38
const
typename
StepperLeapfrogModifierXBase<Scalar>::MODIFIER_TYPE
39
modType)
40
{
41
switch
(modType) {
42
case
StepperLeapfrogModifierXBase<Scalar>::X_BEGIN_STEP
:
43
case
StepperLeapfrogModifierXBase<Scalar>::X_BEFORE_X_UPDATE
:
44
case
StepperLeapfrogModifierXBase<Scalar>::X_BEFORE_EXPLICIT_EVAL
:
45
case
StepperLeapfrogModifierXBase<Scalar>::X_BEFORE_XDOT_UPDATE
:
46
case
StepperLeapfrogModifierXBase<Scalar>::X_END_STEP
: {
47
// No-op.
48
break
;
49
}
50
default
:
51
TEUCHOS_TEST_FOR_EXCEPTION
(
true
, std::logic_error,
52
"Error - unknown modifier type.\n"
);
53
}
54
}
55
};
56
57
}
// namespace Tempus
58
59
#endif // Tempus_StepperLeapfrogModifierX_hpp
Tempus::StepperLeapfrogModifierXDefault
Default ModifierX for StepperLeapfrog.
Definition:
Tempus_StepperLeapfrogModifierXDefault.hpp:25
Tempus::StepperLeapfrogModifierXDefault::StepperLeapfrogModifierXDefault
StepperLeapfrogModifierXDefault()
Constructor.
Definition:
Tempus_StepperLeapfrogModifierXDefault.hpp:29
TEUCHOS_TEST_FOR_EXCEPTION
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
Tempus_StepperLeapfrogModifierXBase.hpp
Tempus::StepperLeapfrogModifierXBase
Base ModifierX for StepperLeapfrog.
Definition:
Tempus_StepperLeapfrogModifierXBase.hpp:38
Tempus::StepperLeapfrogModifierXBase::MODIFIER_TYPE
MODIFIER_TYPE
Indicates the location of application action (see algorithm).
Definition:
Tempus_StepperLeapfrogModifierXBase.hpp:103
Thyra::VectorBase
Tempus::StepperLeapfrogModifierXDefault::~StepperLeapfrogModifierXDefault
virtual ~StepperLeapfrogModifierXDefault()
Destructor.
Definition:
Tempus_StepperLeapfrogModifierXDefault.hpp:32
Teuchos::RCP
Tempus::StepperLeapfrogModifierXDefault::modify
virtual void modify(Teuchos::RCP< Thyra::VectorBase< Scalar > >, const Scalar, const Scalar, const typename StepperLeapfrogModifierXBase< Scalar >::MODIFIER_TYPE modType)
Modify solution based on the MODIFIER_TYPE.
Definition:
Tempus_StepperLeapfrogModifierXDefault.hpp:35
Generated on Fri Nov 22 2024 09:23:26 for Tempus by
1.8.5