FreeFOAM The Cross-Platform CFD Toolkit
Hosted by SourceForge:
Get FreeFOAM at SourceForge.net.
            Fast, secure and Free Open Source software downloads

nutLowReWallFunctionFvPatchScalarField.H

Go to the documentation of this file.
00001 /*---------------------------------------------------------------------------*\
00002   =========                 |
00003   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
00004    \\    /   O peration     |
00005     \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
00006      \\/     M anipulation  |
00007 -------------------------------------------------------------------------------
00008 License
00009     This file is part of OpenFOAM.
00010 
00011     OpenFOAM is free software: you can redistribute it and/or modify it
00012     under the terms of the GNU General Public License as published by
00013     the Free Software Foundation, either version 3 of the License, or
00014     (at your option) any later version.
00015 
00016     OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
00017     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
00018     FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
00019     for more details.
00020 
00021     You should have received a copy of the GNU General Public License
00022     along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
00023 
00024 Class
00025     Foam::incompressible::RASModels::nutLowReWallFunctionFvPatchScalarField
00026 
00027 Description
00028     Boundary condition for turbulent (kinematic) viscosity when for use with
00029     low Reynolds number models.
00030 
00031     Sets nut to zero, and provides an access function to calculate y+.
00032 
00033 SourceFiles
00034     nutLowReWallFunctionFvPatchScalarField.C
00035 
00036 \*---------------------------------------------------------------------------*/
00037 
00038 #ifndef nutLowReWallFunctionFvPatchScalarField_H
00039 #define nutLowReWallFunctionFvPatchScalarField_H
00040 
00041 #include <incompressibleRASModels/nutWallFunctionFvPatchScalarField.H>
00042 
00043 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
00044 
00045 namespace Foam
00046 {
00047 namespace incompressible
00048 {
00049 namespace RASModels
00050 {
00051 
00052 /*---------------------------------------------------------------------------*\
00053            Class nutLowReWallFunctionFvPatchScalarField Declaration
00054 \*---------------------------------------------------------------------------*/
00055 
00056 class nutLowReWallFunctionFvPatchScalarField
00057 :
00058     public nutWallFunctionFvPatchScalarField
00059 {
00060 protected:
00061 
00062     // Protected member functions
00063 
00064         //- Calculate the turbulence viscosity
00065         virtual tmp<scalarField> calcNut() const;
00066 
00067 
00068 public:
00069 
00070     //- Runtime type information
00071     TypeName("nutLowReWallFunction");
00072 
00073 
00074     // Constructors
00075 
00076         //- Construct from patch and internal field
00077         nutLowReWallFunctionFvPatchScalarField
00078         (
00079             const fvPatch&,
00080             const DimensionedField<scalar, volMesh>&
00081         );
00082 
00083         //- Construct from patch, internal field and dictionary
00084         nutLowReWallFunctionFvPatchScalarField
00085         (
00086             const fvPatch&,
00087             const DimensionedField<scalar, volMesh>&,
00088             const dictionary&
00089         );
00090 
00091         //- Construct by mapping given
00092         //  nutLowReWallFunctionFvPatchScalarField
00093         //  onto a new patch
00094         nutLowReWallFunctionFvPatchScalarField
00095         (
00096             const nutLowReWallFunctionFvPatchScalarField&,
00097             const fvPatch&,
00098             const DimensionedField<scalar, volMesh>&,
00099             const fvPatchFieldMapper&
00100         );
00101 
00102         //- Construct as copy
00103         nutLowReWallFunctionFvPatchScalarField
00104         (
00105             const nutLowReWallFunctionFvPatchScalarField&
00106         );
00107 
00108         //- Construct and return a clone
00109         virtual tmp<fvPatchScalarField> clone() const
00110         {
00111             return tmp<fvPatchScalarField>
00112             (
00113                 new nutLowReWallFunctionFvPatchScalarField(*this)
00114             );
00115         }
00116 
00117         //- Construct as copy setting internal field reference
00118         nutLowReWallFunctionFvPatchScalarField
00119         (
00120             const nutLowReWallFunctionFvPatchScalarField&,
00121             const DimensionedField<scalar, volMesh>&
00122         );
00123 
00124         //- Construct and return a clone setting internal field reference
00125         virtual tmp<fvPatchScalarField> clone
00126         (
00127             const DimensionedField<scalar, volMesh>& iF
00128         ) const
00129         {
00130             return tmp<fvPatchScalarField>
00131             (
00132                 new nutLowReWallFunctionFvPatchScalarField(*this, iF)
00133             );
00134         }
00135 };
00136 
00137 
00138 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
00139 
00140 } // End namespace RASModels
00141 } // End namespace incompressible
00142 } // End namespace Foam
00143 
00144 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
00145 
00146 #endif
00147 
00148 // ************************ vim: set sw=4 sts=4 et: ************************ //
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines