OpenFOAM: API Guide
v2112
The open source CFD toolbox
UniformValueField.C
Go to the documentation of this file.
1
/*---------------------------------------------------------------------------*\
2
========= |
3
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4
\\ / O peration |
5
\\ / A nd | www.openfoam.com
6
\\/ M anipulation |
7
-------------------------------------------------------------------------------
8
Copyright (C) 2018-2021 OpenCFD Ltd.
9
-------------------------------------------------------------------------------
10
License
11
This file is part of OpenFOAM.
12
13
OpenFOAM is free software: you can redistribute it and/or modify it
14
under the terms of the GNU General Public License as published by
15
the Free Software Foundation, either version 3 of the License, or
16
(at your option) any later version.
17
18
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21
for more details.
22
23
You should have received a copy of the GNU General Public License
24
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25
26
\*---------------------------------------------------------------------------*/
27
28
#include "
UniformValueField.H
"
29
#include "
polyMesh.H
"
30
31
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
32
33
template
<
class
Type>
34
Foam::PatchFunction1Types::UniformValueField<Type>::UniformValueField
35
(
36
const
polyPatch
& pp,
37
const
word
& redirectType,
38
const
word
& entryName,
39
const
dictionary
&
dict
,
40
const
bool
faceValues
41
)
42
:
43
PatchFunction1<Type>
(pp, entryName,
dict
, faceValues),
44
uniformValuePtr_
45
(
46
Function1<Type>::New
47
(
48
entryName,
49
dict
,
50
redirectType,
51
patchFunction1Base::whichDb()
// mesh registry
52
)
53
)
54
{}
55
56
57
template
<
class
Type>
58
Foam::PatchFunction1Types::UniformValueField<Type>::UniformValueField
59
(
60
const
UniformValueField<Type>
& rhs
61
)
62
:
63
UniformValueField<Type>
(rhs, rhs.patch())
64
{}
65
66
67
template
<
class
Type>
68
Foam::PatchFunction1Types::UniformValueField<Type>::UniformValueField
69
(
70
const
UniformValueField<Type>
& rhs,
71
const
polyPatch
& pp
72
)
73
:
74
PatchFunction1<Type>
(rhs, pp),
75
uniformValuePtr_(rhs.uniformValuePtr_.
clone
())
76
{
77
if
(uniformValuePtr_)
78
{
79
uniformValuePtr_->resetDb(patchFunction1Base::whichDb());
80
}
81
}
82
83
84
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
85
86
template
<
class
Type>
87
void
Foam::PatchFunction1Types::UniformValueField<Type>::autoMap
88
(
89
const
FieldMapper
& mapper
90
)
91
{}
92
93
94
template
<
class
Type>
95
void
Foam::PatchFunction1Types::UniformValueField<Type>::rmap
96
(
97
const
PatchFunction1<Type>
& pf1,
98
const
labelList
& addr
99
)
100
{}
101
102
103
template
<
class
Type>
104
void
Foam::PatchFunction1Types::UniformValueField<Type>::writeData
105
(
106
Ostream
&
os
107
)
const
108
{
109
PatchFunction1<Type>::writeData
(
os
);
110
111
uniformValuePtr_->writeData(
os
);
112
}
113
114
115
// ************************************************************************* //
Foam::word
A class for handling words, derived from Foam::string.
Definition:
word.H:65
UniformValueField.H
writeData
const bool writeData(pdfDictionary.get< bool >("writeData"))
Foam::FieldMapper
Abstract base class to hold the Field mapping addressing and weights.
Definition:
FieldMapper.H:49
Foam::PatchFunction1Types::UniformValueField::rmap
virtual void rmap(const PatchFunction1< Type > &pf1, const labelList &addr)
Reverse map the given PatchFunction1 onto this PatchFunction1.
Definition:
UniformValueField.C:96
polyMesh.H
Foam::Function1
Top level data entry class for use in dictionaries. Provides a mechanism to specify a variable as a c...
Definition:
propellerInfo.H:291
Foam::polyPatch
A patch is a list of labels that address the faces in the global face list.
Definition:
polyPatch.H:68
dict
dictionary dict
Definition:
searchingEngine.H:14
Foam::dictionary
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition:
dictionary.H:123
Foam::PatchFunction1Types::UniformValueField::UniformValueField
UniformValueField(const polyPatch &pp, const word &redirectType, const word &entryName, const dictionary &dict, const bool faceValues=true)
Construct from entry name and dictionary.
Definition:
UniformValueField.C:35
os
OBJstream os(runTime.globalPath()/outputName)
Foam::PatchFunction1
Top level data entry class for use in dictionaries. Provides a mechanism to specify a variable as a c...
Definition:
PatchFunction1.H:60
Foam::PatchFunction1Types::UniformValueField::writeData
virtual void writeData(Ostream &os) const
Write in dictionary format.
Definition:
UniformValueField.C:105
Foam::PatchFunction1Types::UniformValueField::autoMap
virtual void autoMap(const FieldMapper &mapper)
Map (and resize as needed) from self given a mapping object.
Definition:
UniformValueField.C:88
Foam::PatchFunction1Types::UniformValueField
Templated function that returns a uniform field based on a run-time selectable Function1 entry.
Definition:
UniformValueField.H:60
Foam::List< label >
Foam::Ostream
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Definition:
Ostream.H:56
Foam::autoPtr::clone
autoPtr< T > clone(Args &&... args) const
Copy construct by invoking clone on underlying managed object.
src
meshTools
PatchFunction1
UniformValueField
UniformValueField.C
Generated by
1.8.17
OPENFOAM® is a registered
trademark
of OpenCFD Ltd.