1 /*---------------------------------------------------------------------------*\
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
5 \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
7 -------------------------------------------------------------------------------
9 This file is part of OpenFOAM.
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.
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
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/>.
25 Foam::compressible::turbulentTemperatureCoupledBaffleMixedFvPatchScalarField
28 Mixed boundary condition for temperature, to be used for heat-transfer
29 on back-to-back baffles.
31 Specifies gradient and temperature such that the equations are the same
33 - refGradient = zero gradient
34 - refValue = neighbour value
35 - mixFraction = nbrKDelta / (nbrKDelta + myKDelta())
37 where KDelta is heat-transfer coefficient K * deltaCoeffs
42 type compressible::turbulentTemperatureCoupledBaffleMixed;
49 Needs to be on underlying directMapped(Wall)FvPatch.
51 Note: K : heat conduction at patch. Gets supplied how to lookup/calculate K:
52 - 'lookup' : lookup volScalarField (or volSymmTensorField) with name
53 - 'basicThermo' : use basicThermo and compressible::RASmodel to calculate K
54 - 'solidThermo' : use basicSolidThermo K()
55 - 'directionalSolidThermo' directionalK()
57 Note: runs in parallel with arbitrary decomposition. Uses directMapped
58 functionality to calculate exchange.
61 turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C
63 \*---------------------------------------------------------------------------*/
65 #ifndef turbulentTemperatureCoupledBaffleMixedFvPatchScalarField_H
66 #define turbulentTemperatureCoupledBaffleMixedFvPatchScalarField_H
68 #include "mixedFvPatchFields.H"
69 #include "temperatureCoupledBase.H"
71 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
75 namespace compressible
78 /*---------------------------------------------------------------------------*\
79 Class turbulentTemperatureCoupledBaffleMixedFvPatchScalarField Declaration
80 \*---------------------------------------------------------------------------*/
82 class turbulentTemperatureCoupledBaffleMixedFvPatchScalarField
84 public mixedFvPatchScalarField,
85 public temperatureCoupledBase
89 //- Name of field on the neighbour region
90 const word neighbourFieldName_;
95 //- Runtime type information
96 TypeName("compressible::turbulentTemperatureCoupledBaffleMixed");
101 //- Construct from patch and internal field
102 turbulentTemperatureCoupledBaffleMixedFvPatchScalarField
105 const DimensionedField<scalar, volMesh>&
108 //- Construct from patch, internal field and dictionary
109 turbulentTemperatureCoupledBaffleMixedFvPatchScalarField
112 const DimensionedField<scalar, volMesh>&,
116 //- Construct by mapping given
117 // turbulentTemperatureCoupledBaffleMixedFvPatchScalarField onto a
119 turbulentTemperatureCoupledBaffleMixedFvPatchScalarField
121 const turbulentTemperatureCoupledBaffleMixedFvPatchScalarField&,
123 const DimensionedField<scalar, volMesh>&,
124 const fvPatchFieldMapper&
127 //- Construct and return a clone
128 virtual tmp<fvPatchScalarField> clone() const
130 return tmp<fvPatchScalarField>
132 new turbulentTemperatureCoupledBaffleMixedFvPatchScalarField
139 //- Construct as copy setting internal field reference
140 turbulentTemperatureCoupledBaffleMixedFvPatchScalarField
142 const turbulentTemperatureCoupledBaffleMixedFvPatchScalarField&,
143 const DimensionedField<scalar, volMesh>&
146 //- Construct and return a clone setting internal field reference
147 virtual tmp<fvPatchScalarField> clone
149 const DimensionedField<scalar, volMesh>& iF
152 return tmp<fvPatchScalarField>
154 new turbulentTemperatureCoupledBaffleMixedFvPatchScalarField
165 //- Update the coefficients associated with the patch field
166 virtual void updateCoeffs();
169 virtual void write(Ostream&) const;
173 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
175 } // End namespace compressible
176 } // End namespace Foam
178 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
182 // ************************************************************************* //