wallHeatTransferFvPatchScalarField.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) 2011-2015 OpenFOAM Foundation
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::incompressible::wallHeatTransferFvPatchScalarField
26 
27 Group
28  grpThermoBoundaryConditions grpWallBoundaryConditions
29 
30 Description
31  This boundary condition provides an enthalpy condition for wall heat
32  transfer
33 
34  \heading Patch usage
35 
36  \table
37  Property | Description | Required | Default value
38  Tinf | wall temperature | yes |
39  alphaWall | thermal diffusivity | yes |
40  \endtable
41 
42  Example of the boundary condition specification:
43  \verbatim
44  myPatch
45  {
46  type wallHeatTransfer;
47  Tinf uniform 500;
48  alphaWall uniform 1;
49  }
50  \endverbatim
51 
52 SourceFiles
53  wallHeatTransferFvPatchScalarField.C
54 
55 \*---------------------------------------------------------------------------*/
56 
57 #ifndef wallHeatTransferFvPatchScalarField_H
58 #define wallHeatTransferFvPatchScalarField_H
59 
60 #include "mixedFvPatchFields.H"
61 
62 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
63 
64 namespace Foam
65 {
66 namespace incompressible
67 {
68 
69 /*---------------------------------------------------------------------------*\
70  Class wallHeatTransferFvPatchScalarField Declaration
71 \*---------------------------------------------------------------------------*/
72 
73 class wallHeatTransferFvPatchScalarField
74 :
75  public mixedFvPatchScalarField
76 {
77  // Private data
78 
79  //- Temperature at the wall
81 
82  //- Thermal diffusivity at the wall
84 
85 
86 public:
87 
88  //- Runtime type information
89  TypeName("wallHeatTransfer");
90 
91 
92  // Constructors
93 
94  //- Construct from patch and internal field
96  (
97  const fvPatch&,
99  );
100 
101  //- Construct from patch, internal field and dictionary
103  (
104  const fvPatch&,
106  const dictionary&
107  );
108 
109  //- Construct by mapping given wallHeatTransferFvPatchScalarField
110  // onto a new patch
112  (
114  const fvPatch&,
116  const fvPatchFieldMapper&
117  );
118 
119  //- Construct as copy
121  (
123  );
124 
125  //- Construct and return a clone
126  virtual tmp<fvPatchScalarField> clone() const
127  {
129  (
131  );
132  }
133 
134  //- Construct as copy setting internal field reference
136  (
139  );
140 
141  //- Construct and return a clone setting internal field reference
143  (
145  ) const
146  {
148  (
150  );
151  }
152 
153 
154  // Member functions
155 
156  // Access
157 
158  //- Return Tinf
159  const scalarField& Tinf() const
160  {
161  return Tinf_;
162  }
163 
164  //- Return reference to Tinf to allow adjustment
165  scalarField& Tinf()
166  {
167  return Tinf_;
168  }
169 
170  //- Return alphaWall
171  const scalarField& alphaWall() const
172  {
173  return alphaWall_;
174  }
175 
176  //- Return reference to alphaWall to allow adjustment
178  {
179  return alphaWall_;
180  }
181 
182 
183  // Mapping functions
184 
185  //- Map (and resize as needed) from self given a mapping object
186  virtual void autoMap
187  (
188  const fvPatchFieldMapper&
189  );
190 
191  //- Reverse map the given fvPatchField onto this fvPatchField
192  virtual void rmap
193  (
194  const fvPatchScalarField&,
195  const labelList&
196  );
197 
198 
199  // Evaluation functions
200 
201  //- Update the coefficients associated with the patch field
202  virtual void updateCoeffs();
203 
204 
205  //- Write
206  virtual void write(Ostream&) const;
207 };
208 
209 
210 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
211 
212 } // End namespace incompressible
213 } // End namespace Foam
214 
215 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
216 
217 #endif
218 
219 // ************************************************************************* //
Foam::fvPatchField
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
Definition: fvPatchField.H:65
Foam::scalarField
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
Definition: primitiveFieldsFwd.H:48
Foam::incompressible::wallHeatTransferFvPatchScalarField
This boundary condition provides an enthalpy condition for wall heat transfer.
Definition: wallHeatTransferFvPatchScalarField.H:87
Foam::incompressible::wallHeatTransferFvPatchScalarField::TypeName
TypeName("wallHeatTransfer")
Runtime type information.
Foam::incompressible::wallHeatTransferFvPatchScalarField::Tinf_
scalarField Tinf_
Temperature at the wall.
Definition: wallHeatTransferFvPatchScalarField.H:94
Foam::incompressible::wallHeatTransferFvPatchScalarField::wallHeatTransferFvPatchScalarField
wallHeatTransferFvPatchScalarField(const fvPatch &, const DimensionedField< scalar, volMesh > &)
Construct from patch and internal field.
Definition: wallHeatTransferFvPatchScalarField.C:41
Foam::tmp
A class for managing temporary objects.
Definition: PtrList.H:118
Foam::incompressible::wallHeatTransferFvPatchScalarField::clone
virtual tmp< fvPatchScalarField > clone() const
Construct and return a clone.
Definition: wallHeatTransferFvPatchScalarField.H:140
Foam::incompressible::wallHeatTransferFvPatchScalarField::Tinf
const scalarField & Tinf() const
Return Tinf.
Definition: wallHeatTransferFvPatchScalarField.H:173
Foam::incompressible::wallHeatTransferFvPatchScalarField::Tinf
scalarField & Tinf()
Return reference to Tinf to allow adjustment.
Definition: wallHeatTransferFvPatchScalarField.H:179
Foam::incompressible::wallHeatTransferFvPatchScalarField::alphaWall
scalarField & alphaWall()
Return reference to alphaWall to allow adjustment.
Definition: wallHeatTransferFvPatchScalarField.H:191
Foam::Field
Pre-declare SubField and related Field type.
Definition: Field.H:57
Foam::fvPatch
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Definition: fvPatch.H:61
Foam::incompressible::wallHeatTransferFvPatchScalarField::rmap
virtual void rmap(const fvPatchScalarField &, const labelList &)
Reverse map the given fvPatchField onto this fvPatchField.
Definition: wallHeatTransferFvPatchScalarField.C:136
Foam::incompressible::wallHeatTransferFvPatchScalarField::updateCoeffs
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
Definition: wallHeatTransferFvPatchScalarField.C:151
Foam::dictionary
A list of keyword definitions, which are a keyword followed by any number of values (e....
Definition: dictionary.H:137
Foam
Namespace for OpenFOAM.
Definition: combustionModel.C:30
mixedFvPatchFields.H
Foam::incompressible::wallHeatTransferFvPatchScalarField::write
virtual void write(Ostream &) const
Write.
Definition: wallHeatTransferFvPatchScalarField.C:196
Foam::incompressible::wallHeatTransferFvPatchScalarField::alphaWall_
scalarField alphaWall_
Thermal diffusivity at the wall.
Definition: wallHeatTransferFvPatchScalarField.H:97
Foam::incompressible::wallHeatTransferFvPatchScalarField::alphaWall
const scalarField & alphaWall() const
Return alphaWall.
Definition: wallHeatTransferFvPatchScalarField.H:185
Foam::List
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
Definition: HashTable.H:59
Foam::incompressible::wallHeatTransferFvPatchScalarField::autoMap
virtual void autoMap(const fvPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
Definition: wallHeatTransferFvPatchScalarField.C:125
Foam::fvPatchFieldMapper
Foam::fvPatchFieldMapper.
Definition: fvPatchFieldMapper.H:45
Foam::Ostream
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Definition: Ostream.H:53
Foam::DimensionedField
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
Definition: DimensionedField.H:51