greyDiffusiveViewFactorFixedValueFvPatchScalarField.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) 2011-2017 OpenFOAM Foundation
9 Copyright (C) 2016 OpenCFD Ltd
10-------------------------------------------------------------------------------
11License
12 This file is part of OpenFOAM.
13
14 OpenFOAM is free software: you can redistribute it and/or modify it
15 under the terms of the GNU General Public License as published by
16 the Free Software Foundation, either version 3 of the License, or
17 (at your option) any later version.
18
19 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
20 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
21 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
22 for more details.
23
24 You should have received a copy of the GNU General Public License
25 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
26
27Class
28 Foam::radiation::greyDiffusiveViewFactorFixedValueFvPatchScalarField
29
30Group
31 grpThermoBoundaryConditions
32
33Description
34 This boundary condition provides a grey-diffuse condition for radiative
35 heat flux, \c qr, for use with the view factor model
36
37Usage
38 \table
39 Property | Description | Required | Default value
40 qro | external radiative heat flux | yes |
41 \endtable
42
43 Example of the boundary condition specification:
44 \verbatim
45 <patchName>
46 {
47 type greyDiffusiveRadiationViewFactor;
48 qro uniform 0;
49 }
50 \endverbatim
51
52See also
53 Foam::radiation::radiationModel
54 Foam::radiation::viewFactor
55 Foam::radiationCoupledBase
56 Foam::fixedValueFvPatchField
57
58SourceFiles
59 greyDiffusiveViewFactorFixedValueFvPatchScalarField.C
60
61\*---------------------------------------------------------------------------*/
62
63#ifndef greyDiffusiveViewFactorFixedValueFvPatchScalarField_H
64#define greyDiffusiveViewFactorFixedValueFvPatchScalarField_H
65
67
68// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
69
70namespace Foam
71{
72namespace radiation
73{
74
75/*---------------------------------------------------------------------------*\
76 Class greyDiffusiveViewFactorFixedValueFvPatchScalarField declaration
77\*---------------------------------------------------------------------------*/
78
79class greyDiffusiveViewFactorFixedValueFvPatchScalarField
80:
81 public fixedValueFvPatchScalarField
82{
83 // Private data
84
85 //- External radiative heat flux
86 scalarField qro_;
87
89public:
90
91 //- Runtime type information
92 TypeName("greyDiffusiveRadiationViewFactor");
93
94
95 // Constructors
96
97 //- Construct from patch and internal field
99 (
100 const fvPatch&,
102 );
103
104 //- Construct from patch, internal field and dictionary
106 (
107 const fvPatch&,
109 const dictionary&
110 );
111
112 //- Construct by mapping given a
113 // greyDiffusiveViewFactorFixedValueFvPatchScalarField onto a new patch
115 (
117 const fvPatch&,
119 const fvPatchFieldMapper&
120 );
121
122 //- Construct as copy
124 (
126 );
127
128 //- Construct and return a clone
129 virtual tmp<fvPatchScalarField> clone() const
130 {
132 (
134 );
135 }
136
137 //- Construct as copy setting internal field reference
139 (
142 );
143
144 //- Construct and return a clone setting internal field reference
146 (
148 ) const
149 {
151 (
153 (
154 *this,
155 iF
156 )
157 );
158 }
159
160
161 // Member functions
162
163 // Access
164
165 //- Return external + solar load radiative heat flux
166 tmp<scalarField> qro(label bandI = 0) const;
167
168
169 // Evaluation functions
170
171 //- Update the coefficients associated with the patch field
172 virtual void updateCoeffs();
173
174
175 // Mapping functions
176
177 //- Map (and resize as needed) from self given a mapping object
178 virtual void autoMap
179 (
180 const fvPatchFieldMapper&
181 );
182
183 //- Reverse map the given fvPatchField onto this fvPatchField
184 virtual void rmap
185 (
186 const fvPatchScalarField&,
187 const labelList&
188 );
189
190
191 // I-O
192
193 //- Write
194 virtual void write(Ostream&) const;
195};
196
197
198// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
199
200} // End namespace radiation
201} // End namespace Foam
202
203// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
204
205#endif
206
207// ************************************************************************* //
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
This boundary condition provides a grey-diffuse condition for radiative heat flux,...
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.
TypeName("greyDiffusiveRadiationViewFactor")
Runtime type information.
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.
tmp< scalarField > qro(label bandI=0) const
Return external + solar load radiative heat flux.
A class for managing temporary objects.
Definition: tmp.H:65
autoPtr< radiation::radiationModel > radiation(radiation::radiationModel::New(T))
Namespace for OpenFOAM.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
runTime write()
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition: typeInfo.H:73