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_StepperForwardEulerModifierXDefault.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_StepperForwardEulerModifierX_hpp
10
#define Tempus_StepperForwardEulerModifierX_hpp
11
12
#include "Tempus_config.hpp"
13
#include "
Tempus_StepperForwardEulerModifierXBase.hpp
"
14
15
16
namespace
Tempus {
17
26
template
<
class
Scalar>
27
class
StepperForwardEulerModifierXDefault
28
:
virtual
public
Tempus::StepperForwardEulerModifierXBase
<Scalar>
29
{
30
public
:
31
33
StepperForwardEulerModifierXDefault
(){}
34
36
virtual
~StepperForwardEulerModifierXDefault
(){}
37
39
virtual
void
modify
(
40
Teuchos::RCP
<
Thyra::VectorBase<Scalar>
>
/* x */
,
41
const
Scalar
/* time */
,
const
Scalar
/* dt */
,
42
const
typename
StepperForwardEulerModifierXBase<Scalar>::MODIFIER_TYPE
modType)
43
{
44
switch
(modType) {
45
case
StepperForwardEulerModifierXBase<Scalar>::X_BEGIN_STEP
:
46
case
StepperForwardEulerModifierXBase<Scalar>::X_BEFORE_EXPLICIT_EVAL
:
47
case
StepperForwardEulerModifierXBase<Scalar>::XDOT_END_STEP
:
48
{
49
// No-op.
50
break
;
51
}
52
default
:
53
TEUCHOS_TEST_FOR_EXCEPTION
(
true
, std::logic_error,
54
"Error - unknown modifier type.\n"
);
55
}
56
}
57
58
};
59
60
}
// namespace Tempus
61
62
#endif // Tempus_StepperForwardEulerModifierX_hpp
Tempus::StepperForwardEulerModifierXBase::MODIFIER_TYPE
MODIFIER_TYPE
Indicates the location of application action (see algorithm).
Definition:
Tempus_StepperForwardEulerModifierXBase.hpp:102
TEUCHOS_TEST_FOR_EXCEPTION
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
Tempus::StepperForwardEulerModifierXDefault
Default ModifierX for StepperForwardEuler.
Definition:
Tempus_StepperForwardEulerModifierXDefault.hpp:27
Tempus::StepperForwardEulerModifierXDefault::StepperForwardEulerModifierXDefault
StepperForwardEulerModifierXDefault()
Constructor.
Definition:
Tempus_StepperForwardEulerModifierXDefault.hpp:33
Tempus_StepperForwardEulerModifierXBase.hpp
Tempus::StepperForwardEulerModifierXBase
Base ModifierX for StepperForwardEuler.
Definition:
Tempus_StepperForwardEulerModifierXBase.hpp:38
Thyra::VectorBase
Tempus::StepperForwardEulerModifierXDefault::~StepperForwardEulerModifierXDefault
virtual ~StepperForwardEulerModifierXDefault()
Destructor.
Definition:
Tempus_StepperForwardEulerModifierXDefault.hpp:36
Tempus::StepperForwardEulerModifierXDefault::modify
virtual void modify(Teuchos::RCP< Thyra::VectorBase< Scalar > >, const Scalar, const Scalar, const typename StepperForwardEulerModifierXBase< Scalar >::MODIFIER_TYPE modType)
Modify solution based on the MODIFIER_TYPE.
Definition:
Tempus_StepperForwardEulerModifierXDefault.hpp:39
Teuchos::RCP
Generated by
1.8.5