1 /*---------------------------------------------------------------------------*\
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
5 \\ / A nd | Copyright (C) 2008-2011 OpenCFD Ltd.
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::incompressible::LESModels::SpalartAllmarasIDDES
28 SpalartAllmarasIDDES LES turbulence model for incompressible flows
31 SpalartAllmarasIDDES.C
33 \*---------------------------------------------------------------------------*/
35 #ifndef SpalartAllmarasIDDES_H
36 #define SpalartAllmarasIDDES_H
38 #include "SpalartAllmaras.H"
40 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
44 namespace incompressible
49 /*---------------------------------------------------------------------------*\
50 Class SpalartAllmarasIDDES Declaration
51 \*---------------------------------------------------------------------------*/
53 class SpalartAllmarasIDDES
55 public SpalartAllmaras
61 autoPtr<LESdelta> hmax_;
62 autoPtr<LESdelta> IDDESDelta_;
63 dimensionedScalar fwStar_;
64 dimensionedScalar cl_;
65 dimensionedScalar ct_;
68 // Private Member Functions
70 tmp<volScalarField> alpha() const;
71 tmp<volScalarField> ft(const volScalarField& S) const;
72 tmp<volScalarField> fl(const volScalarField& S) const;
74 tmp<volScalarField> rd
76 const volScalarField& visc,
77 const volScalarField& S
81 tmp<volScalarField> fd(const volScalarField& S) const;
83 // Disallow default bitwise copy construct and assignment
84 SpalartAllmarasIDDES(const SpalartAllmarasIDDES&);
85 SpalartAllmarasIDDES& operator=(const SpalartAllmarasIDDES&);
90 // Protected Member Functions
93 virtual tmp<volScalarField> dTilda(const volScalarField& S) const;
98 //- Runtime type information
99 TypeName("SpalartAllmarasIDDES");
104 //- Construct from components
107 const volVectorField& U,
108 const surfaceScalarField& phi,
109 transportModel& transport,
110 const word& turbulenceModelName = turbulenceModel::typeName,
111 const word& modelName = typeName
116 virtual ~SpalartAllmarasIDDES()
122 //- Access function to filter width
123 virtual const volScalarField& delta() const
125 return IDDESDelta_();
128 //- Read LESProperties dictionary
133 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
135 } // End namespace LESModels
136 } // End namespace incompressible
137 } // End namespace Foam
139 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
143 // ************************************************************************* //