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/>.
34 \*---------------------------------------------------------------------------*/
36 #ifndef thermoBaffle2D_H
37 #define thermoBaffle2D_H
39 #include "thermoBaffleModel.H"
40 #include "volFieldsFwd.H"
43 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
47 namespace regionModels
49 namespace thermoBaffleModels
53 /*---------------------------------------------------------------------------*\
54 Class thermoBaffle2D Declaration
55 \*---------------------------------------------------------------------------*/
59 public thermoBaffleModel
63 // Private member functions
65 //- Disallow default bitwise copy construct
66 thermoBaffle2D(const thermoBaffle2D&);
68 //- Disallow default bitwise assignment
69 void operator=(const thermoBaffle2D&);
71 //- Initialize thermoBaffle2D
79 // Solution parameters
81 //- Number of non orthogonal correctors
88 autoPtr<basicSolidThermo> thermo_;
96 //- Surface energy source / [J/m2/s]
99 //- Volumetric energy source / [J/m3/s]
103 // Protected member functions
105 //- Read control parameters from dictionary
110 //- Solve energy equation
116 //- Runtime type information
117 TypeName("thermoBaffle2D");
122 //- Construct from components
123 thermoBaffle2D(const word& modelType, const fvMesh& mesh);
125 //- Construct from components and dict
128 const word& modelType,
130 const dictionary& dict
136 virtual ~thermoBaffle2D();
143 //- Return const reference to the basicSolidThermo
144 virtual const basicSolidThermo& thermo() const;
149 //- Return the film specific heat capacity [J/kg/K]
150 virtual const tmp<volScalarField> Cp() const;
152 //- Return solid absortivity [1/m]
153 virtual const volScalarField& kappa() const;
155 //- Return the film mean temperature [K]
156 virtual const volScalarField& T() const;
158 //- Return density [Kg/m3]
159 virtual const volScalarField& rho() const;
161 //- Return thermal conductivity [W/m/K]
162 virtual const volScalarField& K() const;
167 //- Return sensible enthalpy as a function of temperature
169 inline tmp<scalarField> hs
171 const scalarField& T,
175 //- Return sensible enthalpy as a function of temperature
176 inline tmp<volScalarField> hs
178 const volScalarField& T
181 //- Return temperature as a function of sensible enthalpy
182 inline tmp<volScalarField> T
184 const volScalarField& hs
190 //- Pre-evolve thermal baffle
191 virtual void preEvolveRegion();
193 //- Evolve thermal baffle
194 virtual void evolveRegion();
200 //- Provide some feedback
201 virtual void info() const;
205 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
207 } // End namespace thermoBaffleModels
208 } // End namespace regionModels
209 } // End namespace Foam
211 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
213 #include "thermoBaffle2DI.H"
215 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
219 // ************************************************************************* //