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

saturateEvaporationModel.C

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) 1991-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 \*---------------------------------------------------------------------------*/
00025 
00026 #include <OpenFOAM/error.H>
00027 
00028 #include "saturateEvaporationModel.H"
00029 #include <OpenFOAM/addToRunTimeSelectionTable.H>
00030 
00031 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
00032 
00033 namespace Foam
00034 {
00035 
00036 // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
00037 
00038 defineTypeNameAndDebug(saturateEvaporationModel, 0);
00039 
00040 addToRunTimeSelectionTable
00041 (
00042     evaporationModel,
00043     saturateEvaporationModel,
00044     dictionary
00045 );
00046 
00047 
00048 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
00049 
00050 // Construct from dictionary
00051 saturateEvaporationModel::saturateEvaporationModel
00052 (
00053     const dictionary& dict
00054 )
00055 :
00056     evaporationModel(dict)
00057 {}
00058 
00059 
00060 // * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
00061 
00062 saturateEvaporationModel::~saturateEvaporationModel()
00063 {}
00064 
00065 
00066 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
00067 
00068 bool saturateEvaporationModel::evaporation() const
00069 {
00070     return true;
00071 }
00072 
00073 // Correlation for the Sherwood Number
00074 scalar saturateEvaporationModel::Sh
00075 (
00076     const scalar ReynoldsNumber,
00077     const scalar SchmidtNumber
00078 ) const
00079 {
00080     return 0.0;
00081 }
00082 
00083 scalar saturateEvaporationModel::relaxationTime
00084 (
00085     const scalar diameter,
00086     const scalar liquidDensity,
00087     const scalar rhoFuelVapor,
00088     const scalar massDiffusionCoefficient,
00089     const scalar ReynoldsNumber,
00090     const scalar SchmidtNumber,
00091     const scalar Xs,
00092     const scalar Xf,
00093     const scalar m0,
00094     const scalar dm,
00095     const scalar dt
00096 ) const
00097 {
00098     return max(SMALL,dt*(m0/dm - 1.0));
00099 }
00100 
00101 
00102 scalar saturateEvaporationModel::boilingTime
00103 (
00104     const scalar liquidDensity,
00105     const scalar cpFuel,
00106     const scalar heatOfVapour,
00107     const scalar kappa,
00108     const scalar Nusselt,
00109     const scalar deltaTemp,
00110     const scalar diameter,
00111     const scalar, 
00112     const scalar, 
00113     const scalar, 
00114     const scalar, 
00115     const scalar, 
00116     const scalar, 
00117     const scalar, 
00118     const scalar, 
00119     const scalar 
00120 ) const
00121 {
00122     scalar time = GREAT;
00123 
00124     // the deltaTemperature is limited to not go below .5 deg K
00125     // for numerical reasons.
00126     // This is probably not important, since it results in an upper
00127     // limit for the boiling time... which we have anyway.
00128     scalar deltaT = max(0.5, deltaTemp);
00129 
00130     time = liquidDensity*cpFuel*sqr(diameter)/
00131     (
00132         6.0 * kappa * Nusselt * log(1.0 + cpFuel * deltaT/max(SMALL, heatOfVapour))
00133     );
00134 
00135     time = max(VSMALL, time);
00136 
00137     return time;
00138 }
00139 
00140 inline label saturateEvaporationModel::nEvapIter() const
00141 {
00142     return 1;
00143 }
00144 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
00145 
00146 } // End namespace Foam
00147 
00148 // ************************ vim: set sw=4 sts=4 et: ************************ //
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines