Tempus
Version of the Day
Time Integration
Toggle main menu visibility
Loading...
Searching...
No Matches
test
PhysicsState
Tempus_PhysicsStateCounter.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_PhysicsStateCounter_hpp
10
#define Tempus_PhysicsStateCounter_hpp
11
12
#include "Teuchos_VerboseObject.hpp"
13
#include "Teuchos_Describable.hpp"
14
#include <string>
15
#include "Tempus_PhysicsState.hpp"
16
17
18
namespace
Tempus_Test
{
19
20
template
<
class
Scalar>
24
class
PhysicsStateCounter
25
:
virtual
public
Tempus::PhysicsState
<Scalar>
26
{
27
public
:
28
30
PhysicsStateCounter
(
31
std::string pN =
"Tempus::PhysicsStateCounter"
,
int
pI = 0)
32
:
Tempus
::
PhysicsState
<Scalar>(pN),
physicsCounter_
(pI)
33
{}
34
36
virtual
~PhysicsStateCounter
() {}
37
39
virtual
Teuchos::RCP<Tempus::PhysicsState<Scalar> >
clone
()
const
40
{
41
Teuchos::RCP<PhysicsStateCounter<Scalar> > pSC = Teuchos::rcp(
42
new
PhysicsStateCounter<Scalar>
(this->
physicsName_
,
43
this->
physicsCounter_
));
44
return
pSC;
45
}
46
47
//using Tempus::PhysicsState<Scalar>::copy;
49
virtual
void
copy
(
const
Teuchos::RCP<
const
Tempus::PhysicsState<Scalar>
>& pS)
50
{
51
Teuchos::RCP<const PhysicsStateCounter<Scalar> > pSC =
52
Teuchos::rcp_dynamic_cast<const PhysicsStateCounter<Scalar> >(pS);
53
54
this->
physicsName_
= pSC->getName();
55
this->
physicsCounter_
= pSC->getCounter();
56
}
57
59
virtual
int
getCounter
()
const
{
return
physicsCounter_
; }
60
62
virtual
void
setCounter
(
int
counter) {
physicsCounter_
= counter; }
63
65
66
virtual
void
describe
(Teuchos::FancyOStream & out,
67
const
Teuchos::EVerbosityLevel verbLevel)
const
68
{
69
out << this->
description
() <<
"::describe"
<< std::endl
70
<<
" physicsName = "
<< this->
physicsName_
<< std::endl
71
<<
" physicsCounter = "
<<
physicsCounter_
<< std::endl;
72
}
73
74
75
protected
:
76
77
int
physicsCounter_
;
78
79
};
80
}
// namespace Tempus_Test
81
#endif
// Tempus_PhysicsStateCounter_hpp
Tempus::PhysicsState
PhysicsState is a simple class to hold information about the physics.
Definition
Tempus_PhysicsState_decl.hpp:40
Tempus::PhysicsState::description
virtual std::string description() const
Definition
Tempus_PhysicsState_impl.hpp:56
Tempus::PhysicsState::PhysicsState
PhysicsState(std::string pN="Tempus::PhysicsState")
Constructor.
Definition
Tempus_PhysicsState_impl.hpp:20
Tempus::PhysicsState::physicsName_
std::string physicsName_
Name of the creating Physics.
Definition
Tempus_PhysicsState_decl.hpp:71
Tempus_Test::PhysicsStateCounter::physicsCounter_
int physicsCounter_
Counter for steps.
Definition
Tempus_PhysicsStateCounter.hpp:77
Tempus_Test::PhysicsStateCounter::setCounter
virtual void setCounter(int counter)
Set counter of PhysicsStateCounter.
Definition
Tempus_PhysicsStateCounter.hpp:62
Tempus_Test::PhysicsStateCounter::PhysicsStateCounter
PhysicsStateCounter(std::string pN="Tempus::PhysicsStateCounter", int pI=0)
Constructor.
Definition
Tempus_PhysicsStateCounter.hpp:30
Tempus_Test::PhysicsStateCounter::copy
virtual void copy(const Teuchos::RCP< const Tempus::PhysicsState< Scalar > > &pS)
This is a deep copy.
Definition
Tempus_PhysicsStateCounter.hpp:49
Tempus_Test::PhysicsStateCounter::describe
virtual void describe(Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const
Definition
Tempus_PhysicsStateCounter.hpp:66
Tempus_Test::PhysicsStateCounter::~PhysicsStateCounter
virtual ~PhysicsStateCounter()
Destructor.
Definition
Tempus_PhysicsStateCounter.hpp:36
Tempus_Test::PhysicsStateCounter::getCounter
virtual int getCounter() const
Return counter of PhysicsStateCounter.
Definition
Tempus_PhysicsStateCounter.hpp:59
Tempus_Test::PhysicsStateCounter::clone
virtual Teuchos::RCP< Tempus::PhysicsState< Scalar > > clone() const
Clone constructor.
Definition
Tempus_PhysicsStateCounter.hpp:39
Tempus_Test
Definition
Tempus_BackwardEuler_ASA.cpp:34
Tempus
Definition
Tempus_AdjointAuxSensitivityModelEvaluator_decl.hpp:21
Generated by
1.17.0