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::thermoParcelInjectionData 00026 00027 Description 00028 Container class to provide injection data for thermodynamic parcels 00029 00030 SourceFiles 00031 thermoParcelInjectionData.C 00032 00033 \*---------------------------------------------------------------------------*/ 00034 00035 #ifndef thermoParcelInjectionData_H 00036 #define thermoParcelInjectionData_H 00037 00038 #include <lagrangianIntermediate/kinematicParcelInjectionData.H> 00039 00040 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 00041 00042 namespace Foam 00043 { 00044 00045 // Forward declaration of classes 00046 class thermoParcelInjectionData; 00047 00048 // Forward declaration of friend functions 00049 00050 Ostream& operator<< 00051 ( 00052 Ostream&, 00053 const thermoParcelInjectionData& 00054 ); 00055 00056 Istream& operator>> 00057 ( 00058 Istream&, 00059 thermoParcelInjectionData& 00060 ); 00061 00062 /*---------------------------------------------------------------------------*\ 00063 Class thermoParcelInjectionData Declaration 00064 \*---------------------------------------------------------------------------*/ 00065 00066 class thermoParcelInjectionData 00067 : 00068 public kinematicParcelInjectionData 00069 { 00070 protected: 00071 00072 // Parcel properties 00073 00074 //- Temperature [K] 00075 scalar T_; 00076 00077 //- Specific heat capacity [J/kg/K] 00078 scalar cp_; 00079 00080 00081 public: 00082 00083 //- Runtime type information 00084 TypeName("thermoParcelInjectionData"); 00085 00086 // Constructors 00087 00088 //- Null constructor 00089 thermoParcelInjectionData(); 00090 00091 //- Construct from dictionary 00092 thermoParcelInjectionData(const dictionary& dict); 00093 00094 //- Construct from Istream 00095 thermoParcelInjectionData(Istream& is); 00096 00097 00098 //-Destructor 00099 virtual ~thermoParcelInjectionData(); 00100 00101 00102 // Access 00103 00104 //- Return const access to the temperature 00105 inline scalar T() const; 00106 00107 //- Return const access to the specific heat capacity 00108 inline scalar cp() const; 00109 00110 00111 // Edit 00112 00113 //- Return access to the temperature 00114 inline scalar& T(); 00115 00116 //- Return access to the specific heat capacity 00117 inline scalar& cp(); 00118 00119 00120 // I-O 00121 00122 // Friend Operators 00123 00124 friend bool operator== 00125 ( 00126 const thermoParcelInjectionData& a, 00127 const thermoParcelInjectionData& b 00128 ) 00129 { 00130 notImplemented 00131 ( 00132 "operator==" 00133 "(" 00134 "const thermoParcelInjectionData&, " 00135 "const thermoParcelInjectionData&" 00136 ")" 00137 ); 00138 00139 return false; 00140 } 00141 00142 friend bool operator!= 00143 ( 00144 const thermoParcelInjectionData& a, 00145 const thermoParcelInjectionData& b 00146 ) 00147 { 00148 notImplemented 00149 ( 00150 "operator==" 00151 "(" 00152 "const thermoParcelInjectionData&, " 00153 "const thermoParcelInjectionData&" 00154 ")" 00155 ); 00156 00157 return false; 00158 } 00159 00160 //- Ostream operator 00161 friend Ostream& operator<< 00162 ( 00163 Ostream& os, 00164 const thermoParcelInjectionData& data 00165 ); 00166 00167 //- Istream operator 00168 friend Istream& operator>> 00169 ( 00170 Istream& is, 00171 thermoParcelInjectionData& data 00172 ); 00173 }; 00174 00175 00176 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 00177 00178 } // End namespace Foam 00179 00180 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 00181 00182 #include "thermoParcelInjectionDataI.H" 00183 00184 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 00185 00186 #endif 00187 00188 // ************************ vim: set sw=4 sts=4 et: ************************ //