Home
Downloads
Documentation
Installation
User Guide
man-pages
API Documentation
README
Release Notes
Changes
License
Support
SourceForge Project
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
src
turbulenceModels
compressible
RAS
derivedFvPatchFields
turbulentHeatFluxTemperature
turbulentHeatFluxTemperatureFvPatchScalarField.H
Go to the documentation of this file.
1
/*---------------------------------------------------------------------------*\
2
========= |
3
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4
\\ / O peration |
5
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
6
\\/ M anipulation |
7
-------------------------------------------------------------------------------
8
License
9
This file is part of OpenFOAM.
10
11
OpenFOAM is free software: you can redistribute it and/or modify it
12
under the terms of the GNU General Public License as published by
13
the Free Software Foundation, either version 3 of the License, or
14
(at your option) any later version.
15
16
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19
for more details.
20
21
You should have received a copy of the GNU General Public License
22
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
23
24
Class
25
Foam::turbulentHeatFluxTemperatureFvPatchScalarField
26
27
Description
28
Fixed heat flux boundary condition for temperature.
29
30
SourceFiles
31
turbulentHeatFluxTemperatureFvPatchScalarField.C
32
33
\*---------------------------------------------------------------------------*/
34
35
#ifndef turbulentHeatFluxTemperatureFvPatchScalarFields_H
36
#define turbulentHeatFluxTemperatureFvPatchScalarFields_H
37
38
#include <
finiteVolume/fvPatchFields.H
>
39
#include <
finiteVolume/fixedGradientFvPatchFields.H
>
40
#include <
OpenFOAM/NamedEnum.H
>
41
42
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
43
44
namespace
Foam
45
{
46
namespace
compressible
47
{
48
49
/*---------------------------------------------------------------------------*\
50
Class turbulentHeatFluxTemperatureFvPatchScalarField Declaration
51
\*---------------------------------------------------------------------------*/
52
53
class
turbulentHeatFluxTemperatureFvPatchScalarField
54
:
55
public
fixedGradientFvPatchScalarField
56
{
57
public
:
58
59
// Data types
60
61
//- Enumeration listing the possible hest source input modes
62
enum
heatSourceType
63
{
64
hsPower
,
65
hsFlux
66
};
67
68
69
private
:
70
71
// Private data
72
73
//- Heat source type names
74
static
const
NamedEnum<heatSourceType, 2>
heatSourceTypeNames_;
75
76
//- Heat source type
77
heatSourceType heatSource_;
78
79
//- Heat power [W] or flux [W/m2]
80
scalarField
q_;
81
82
83
84
public
:
85
86
//- Runtime type information
87
TypeName
(
"compressible::turbulentHeatFluxTemperature"
);
88
89
90
// Constructors
91
92
//- Construct from patch and internal field
93
turbulentHeatFluxTemperatureFvPatchScalarField
94
(
95
const
fvPatch
&,
96
const
DimensionedField<scalar, volMesh>
&
97
);
98
99
//- Construct from patch, internal field and dictionary
100
turbulentHeatFluxTemperatureFvPatchScalarField
101
(
102
const
fvPatch
&,
103
const
DimensionedField<scalar, volMesh>
&,
104
const
dictionary
&
105
);
106
107
//- Construct by mapping given
108
// turbulentHeatFluxTemperatureFvPatchScalarField onto
109
// a new patch
110
turbulentHeatFluxTemperatureFvPatchScalarField
111
(
112
const
turbulentHeatFluxTemperatureFvPatchScalarField
&,
113
const
fvPatch
&,
114
const
DimensionedField<scalar, volMesh>
&,
115
const
fvPatchFieldMapper
&
116
);
117
118
//- Construct as copy
119
turbulentHeatFluxTemperatureFvPatchScalarField
120
(
121
const
turbulentHeatFluxTemperatureFvPatchScalarField
&
122
);
123
124
//- Construct and return a clone
125
virtual
tmp<fvPatchScalarField>
clone
()
const
126
{
127
return
tmp<fvPatchScalarField>
128
(
129
new
turbulentHeatFluxTemperatureFvPatchScalarField
(*
this
)
130
);
131
}
132
133
//- Construct as copy setting internal field reference
134
turbulentHeatFluxTemperatureFvPatchScalarField
135
(
136
const
turbulentHeatFluxTemperatureFvPatchScalarField
&,
137
const
DimensionedField<scalar, volMesh>
&
138
);
139
140
//- Construct and return a clone setting internal field reference
141
virtual
tmp<fvPatchScalarField>
clone
142
(
143
const
DimensionedField<scalar, volMesh>
& iF
144
)
const
145
{
146
return
tmp<fvPatchScalarField>
147
(
148
new
turbulentHeatFluxTemperatureFvPatchScalarField
149
(
150
*
this
,
151
iF
152
)
153
);
154
}
155
156
157
// Member functions
158
159
// Mapping functions
160
161
//- Map (and resize as needed) from self given a mapping object
162
virtual
void
autoMap(
const
fvPatchFieldMapper
&);
163
164
//- Reverse map the given fvPatchField onto this fvPatchField
165
virtual
void
rmap
166
(
167
const
fvPatchScalarField
&,
168
const
labelList
&
169
);
170
171
172
// Evaluation functions
173
174
//- Update the coefficients associated with the patch field
175
virtual
void
updateCoeffs();
176
177
178
// I-O
179
180
//- Write
181
virtual
void
write(
Ostream
&)
const
;
182
};
183
184
185
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
186
187
}
// End namespace compressible
188
}
// End namespace Foam
189
190
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
191
192
#endif
193
194
// ************************ vim: set sw=4 sts=4 et: ************************ //