1 /*---------------------------------------------------------------------------*\
3 \\ / F ield | foam-extend: Open Source CFD
5 \\ / A nd | For copyright notice see file Copyright
7 -------------------------------------------------------------------------------
9 This file is part of foam-extend.
11 foam-extend is free software: you can redistribute it and/or modify it
12 under the terms of the GNU General Public License as published by the
13 Free Software Foundation, either version 3 of the License, or (at your
14 option) any later version.
16 foam-extend is distributed in the hope that it will be useful, but
17 WITHOUT ANY WARRANTY; without even the implied warranty of
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 General Public License for more details.
21 You should have received a copy of the GNU General Public License
22 along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
25 solidWallHeatFluxTemperatureFvPatchScalarField
28 Heat flux boundary condition for temperature on solid region
33 type solidWallHeatFluxTemperature;
34 K K; // Name of K field
35 q uniform 1000; // Heat flux / [W/m2]
36 value 300.0; // Initial temperature / [K]
41 solidWallHeatFluxTemperatureFvPatchScalarField.C
43 \*---------------------------------------------------------------------------*/
45 #ifndef solidWallHeatFluxTemperatureFvPatchScalarField_H
46 #define solidWallHeatFluxTemperatureFvPatchScalarField_H
48 #include "fixedValueFvPatchFields.H"
50 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
55 /*---------------------------------------------------------------------------*\
56 Class solidWallHeatFluxTemperatureFvPatchScalarField Declaration
57 \*---------------------------------------------------------------------------*/
59 class solidWallHeatFluxTemperatureFvPatchScalarField
61 public fixedValueFvPatchScalarField
65 //- Heat flux / [W/m2]
68 //- Name of thermal conductivity field
74 //- Runtime type information
75 TypeName("solidWallHeatFluxTemperature");
80 //- Construct from patch and internal field
81 solidWallHeatFluxTemperatureFvPatchScalarField
84 const DimensionedField<scalar, volMesh>&
87 //- Construct from patch, internal field and dictionary
88 solidWallHeatFluxTemperatureFvPatchScalarField
91 const DimensionedField<scalar, volMesh>&,
95 //- Construct by mapping given
96 // solidWallHeatFluxTemperatureFvPatchScalarField
98 solidWallHeatFluxTemperatureFvPatchScalarField
100 const solidWallHeatFluxTemperatureFvPatchScalarField&,
102 const DimensionedField<scalar, volMesh>&,
103 const fvPatchFieldMapper&
106 //- Construct as copy
107 solidWallHeatFluxTemperatureFvPatchScalarField
109 const solidWallHeatFluxTemperatureFvPatchScalarField&
112 //- Construct and return a clone
113 virtual tmp<fvPatchScalarField> clone() const
115 return tmp<fvPatchScalarField>
117 new solidWallHeatFluxTemperatureFvPatchScalarField(*this)
121 //- Construct as copy setting internal field reference
122 solidWallHeatFluxTemperatureFvPatchScalarField
124 const solidWallHeatFluxTemperatureFvPatchScalarField&,
125 const DimensionedField<scalar, volMesh>&
128 //- Construct and return a clone setting internal field reference
129 virtual tmp<fvPatchScalarField> clone
131 const DimensionedField<scalar, volMesh>& iF
134 return tmp<fvPatchScalarField>
136 new solidWallHeatFluxTemperatureFvPatchScalarField(*this, iF)
143 // Evaluation functions
145 //- Update the coefficients associated with the patch field
146 virtual void updateCoeffs();
151 //- Map (and resize as needed) from self given a mapping object
154 const fvPatchFieldMapper&
157 //- Reverse map the given fvPatchField onto this fvPatchField
160 const fvPatchScalarField&,
168 void write(Ostream&) const;
172 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
174 } // End namespace Foam
176 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
180 // ************************************************************************* //