![]() |
|
00001 /*---------------------------------------------------------------------------*\ 00002 ========= | 00003 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox 00004 \\ / O peration | 00005 \\ / A nd | Copyright (C) 1991-2005 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 the 00013 Free Software Foundation; either version 2 of the License, or (at your 00014 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, write to the Free Software Foundation, 00023 Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 00024 00025 Global 00026 wallViscosity 00027 00028 Description 00029 Calculate wall viscosity from wall-functions. 00030 00031 \*---------------------------------------------------------------------------*/ 00032 00033 { 00034 scalar Cmu25 = pow(Cmu.value(), 0.25); 00035 00036 const fvPatchList& patches = mesh_.boundary(); 00037 00038 forAll(patches, patchi) 00039 { 00040 const fvPatch& curPatch = patches[patchi]; 00041 00042 if (isType<wallFvPatch>(curPatch)) 00043 { 00044 const scalarField& rhow = rho_.boundaryField()[patchi]; 00045 00046 const scalarField muw = mu().boundaryField()[patchi]; 00047 scalarField& mutw = mut_.boundaryField()[patchi]; 00048 00049 forAll(curPatch, facei) 00050 { 00051 label faceCelli = curPatch.faceCells()[facei]; 00052 00053 scalar yPlus = 00054 Cmu25*turbulenceModel::y_[patchi][facei] 00055 *sqrt(k_[faceCelli])/(muw[facei]/rhow[facei]); 00056 00057 if (yPlus > yPlusLam_) 00058 { 00059 mutw[facei] = 00060 muw[facei] 00061 *(yPlus*kappa_/log(E_*yPlus) - 1); 00062 } 00063 else 00064 { 00065 mutw[facei] = 0.0; 00066 } 00067 } 00068 } 00069 } 00070 } 00071 00072 00073 // ************************************************************************* //