Initial commit for version 2.0.x patch release
[OpenFOAM-2.0.x.git] / src / turbulenceModels / incompressible / LES / SpalartAllmarasIDDES / IDDESDelta / IDDESDelta.H
blob8f74dbacc937824adab27b5024444366b3c4884a
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
4    \\    /   O peration     |
5     \\  /    A nd           | Copyright (C) 2008-2010 OpenCFD Ltd.
6      \\/     M anipulation  |
7 -------------------------------------------------------------------------------
8 License
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
19     for more details.
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/>.
24 Class
25     Foam::IDDESDelta
27 Description
28     IDDESDelta used by the IDDES (improved low Re Spalart-Allmaras DES model)
29     The min and max delta are calculated using the double distance of the min or
30     max from the face centre to the cell centre.
32 SourceFiles
33     IDDESDelta.C
35 \*---------------------------------------------------------------------------*/
37 #ifndef IDDESDeltaDelta_H
38 #define IDDESDeltaDelta_H
40 #include "LESdelta.H"
42 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
44 namespace Foam
47 /*---------------------------------------------------------------------------*\
48                          Class IDDESDelta Declaration
49 \*---------------------------------------------------------------------------*/
51 class IDDESDelta
53     public LESdelta
55     // Private data
57         autoPtr<LESdelta> hmax_;
58         scalar deltaCoeff_;
59         scalar cw_;
62     // Private Member Functions
64         //- Disallow default bitwise copy construct and assignment
65         IDDESDelta(const IDDESDelta&);
66         void operator=(const IDDESDelta&);
68         //- Calculate the delta values
69         void calcDelta();
72 public:
74     //- Runtime type information
75     TypeName("IDDESDelta");
78     // Constructors
80         //- Construct from name, mesh and IOdictionary
81         IDDESDelta
82         (
83             const word& name,
84             const fvMesh& mesh,
85             const dictionary&
86         );
89     // Destructor
91         ~IDDESDelta()
92         {}
95     // Member Functions
97         //- Read the LESdelta dictionary
98         void read(const dictionary&);
100         // Correct values
101         void correct();
105 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
107 } // End namespace Foam
109 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
111 #endif
113 // ************************************************************************* //