fixedIncidentRadiationFvPatchScalarField.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 | www.openfoam.com
6 \\/ M anipulation |
7-------------------------------------------------------------------------------
8 Copyright (C) 2016 OpenCFD Ltd.
9-------------------------------------------------------------------------------
10License
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
26Class
27 Foam::radiation::fixedIncidentRadiationFvPatchScalarField
28
29Group
30 grpThermoBoundaryConditions
31
32Description
33 Boundary condition for thermal coupling for solid regions.
34 Used to emulate a fixed incident radiative heat flux on a wall.
35
36 the gradient heat flux is calculated as :
37
38 qr = emissivity*(qrIncident - sigma_*T^4)
39
40 where:
41
42 emissivity is the emissivity of the solid.
43 qrIncident is the specified fixed incident radiation.
44
45 Example usage:
46
47 wall
48 {
49 type fixedIncidentRadiation;
50 qrIncident uniform 500;
51 kappa solidThermo;
52 KappaName none;
53 }
54
55 kappa:
56 - 'lookup' : lookup volScalarField (or volSymmTensorField) with name
57 - 'solidThermo' : use solidThermo kappa()
58
59 emissivity:
60 - 'lookup' : lookup volScalarField emissivity
61 - 'localSolidRadiation': Look up for local solidRadiation
62
63
64SourceFiles
65 fixedIncidentRadiationFvPatchScalarField.C
66
67\*---------------------------------------------------------------------------*/
68
69#ifndef fixedIncidentRadiationFvPatchScalarField_H
70#define fixedIncidentRadiationFvPatchScalarField_H
71
74
75// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
76
77namespace Foam
78{
79namespace radiation
80{
81/*---------------------------------------------------------------------------*\
82 Class fixedIncidentRadiationFvPatchScalarField declaration
83\*---------------------------------------------------------------------------*/
86:
87 public fixedGradientFvPatchScalarField,
89{
90 // Private data
91
92 //- Incident radiative heat flux
93 scalarField qrIncident_;
94
95
96public:
97
98 //- Runtime type information
99 TypeName("fixedIncidentRadiation");
100
101
102 // Constructors
103
104 //- Construct from patch and internal field
106 (
107 const fvPatch&,
109 );
110
111 //- Construct from patch, internal field and dictionary
113 (
114 const fvPatch&,
116 const dictionary&
117 );
118
119 //- Construct by mapping given
120 // turbulentTemperatureCoupledBaffleMixedFvPatchScalarField onto a
121 // new patch
123 (
124 const
126 const fvPatch&,
128 const fvPatchFieldMapper&
129 );
130
131 //- Construct as copy
133 (
135 );
136
137
138 //- Construct and return a clone
139 virtual tmp<fvPatchScalarField> clone() const
140 {
142 (
144 (
145 *this
146 )
147 );
148 }
149
150 //- Construct as copy setting internal field reference
152 (
155 );
156
157 //- Construct and return a clone setting internal field reference
159 (
161 ) const
162 {
164 (
166 (
167 *this,
168 iF
169 )
170 );
171 }
172
173
174 // Member functions
175
176
177 // Mapping functions
178
179 //- Map (and resize as needed) from self given a mapping object
180 virtual void autoMap(const fvPatchFieldMapper&);
181
182 //- Reverse map the given fvPatchField onto this fvPatchField
183 virtual void rmap
184 (
185 const fvPatchScalarField&,
186 const labelList&
187 );
188
189 //- Update the coefficients associated with the patch field
190 virtual void updateCoeffs();
191
192 //- Write
193 virtual void write(Ostream&) const;
194};
195
196
197// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
198
199} // End namespace Foam
200} // End namespace radiation
201
202// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
203
204#endif
205
206// ************************************************************************* //
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Definition: Ostream.H:62
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition: dictionary.H:126
A FieldMapper for finite-volume patch fields.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Definition: fvPatch.H:71
Boundary condition for thermal coupling for solid regions. Used to emulate a fixed incident radiative...
virtual void autoMap(const fvPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
virtual tmp< fvPatchScalarField > clone(const DimensionedField< scalar, volMesh > &iF) const
Construct and return a clone setting internal field reference.
virtual tmp< fvPatchScalarField > clone() const
Construct and return a clone.
virtual void rmap(const fvPatchScalarField &, const labelList &)
Reverse map the given fvPatchField onto this fvPatchField.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
TypeName("fixedIncidentRadiation")
Runtime type information.
Common functions used in temperature coupled boundaries.
A class for managing temporary objects.
Definition: tmp.H:65
autoPtr< radiation::radiationModel > radiation(radiation::radiationModel::New(T))
Namespace for OpenFOAM.
runTime write()
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition: typeInfo.H:73