Merge branch 'upstream/OpenFOAM' into master
[freefoam.git] / src / lagrangian / dieselSpray / spray / sprayI.H
blob06e444a797c18b947b90460dc2442c9c044870e2
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
4    \\    /   O peration     |
5     \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
6      \\/     M anipulation  |
7 -------------------------------------------------------------------------------
8 License
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 the
13     Free Software Foundation; either version 2 of the License, or (at your
14     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
19     for more details.
21     You should have received a copy of the GNU General Public License
22     along with OpenFOAM; if not, write to the Free Software Foundation,
23     Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
25 \*---------------------------------------------------------------------------*/
27 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
29 namespace Foam
32 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
34 inline const Time& spray::runTime() const
36     return runTime_;
40 inline const fvMesh& spray::mesh() const
42     return mesh_;
46 inline const volVectorField& spray::U() const
48     return U_;
52 inline const volScalarField& spray::rho() const
54     return rho_;
58 inline const volScalarField& spray::p() const
60     return p_;
64 inline const volScalarField& spray::T() const
66     return T_;
70 inline PtrList<injector>& spray::injectors()
72     return injectors_;
76 inline const PtrList<injector>& spray::injectors() const
78     return injectors_;
82 inline const atomizationModel& spray::atomization() const
84     return atomization_;
88 inline const breakupModel& spray::breakup() const
90     return breakupModel_;
94 inline const collisionModel& spray::collisions() const
96     return collisionModel_;
100 inline const dispersionModel& spray::dispersion() const
102     return dispersionModel_;
106 inline const dragModel& spray::drag() const
108     return drag_;
112 inline const evaporationModel& spray::evaporation() const
114     return evaporation_;
118 inline const heatTransferModel& spray::heatTransfer() const
120     return heatTransfer_;
124 inline const injectorModel& spray::injection() const
126     return injectorModel_;
130 inline const wallModel& spray::wall() const
132     return wall_;
136 inline tmp<volVectorField> spray::momentumSource() const
138     tmp<volVectorField> tsource
139     (
140         new volVectorField
141         (
142             IOobject
143             (
144                 "sms",
145                 runTime_.timeName(),
146                 mesh_,
147                 IOobject::NO_READ,
148                 IOobject::NO_WRITE
149             ),
150             mesh_,
151             dimensionedVector
152             (
153                 "zero",
154                 dimensionSet(1, -2, -2, 0, 0),
155                 vector::zero
156             )
157         )
158     );
160     tsource().internalField() = sms_/runTime_.deltaT().value()/mesh_.V();
162     return tsource;
166 inline tmp<volScalarField> spray::evaporationSource(const label si) const
168     tmp<volScalarField> tsource
169     (
170         new volScalarField
171         (
172             IOobject
173             (
174                 "srhos",
175                 runTime_.timeName(),
176                 mesh_,
177                 IOobject::NO_READ,
178                 IOobject::NO_WRITE
179             ),
180             mesh_,
181             dimensionedScalar("zero", dimensionSet(1, -3, -1, 0, 0), 0.0)
182         )
183     );
185     if (isLiquidFuel_[si])
186     {
187         label fi = gasToLiquidIndex_[si];
188         tsource().internalField() = srhos_[fi]/runTime_.deltaT().value()/mesh_.V();
189     }
190     else
191     {
192         scalarField s(mesh_.nCells(), 0.0);
193         tsource().internalField() = s;
194     }
196     return tsource;
200 inline tmp<volScalarField> spray::heatTransferSource() const
202     tmp<volScalarField> tsource
203     (
204         new volScalarField
205         (
206             IOobject
207             (
208                 "shs",
209                 runTime_.timeName(),
210                 mesh_,
211                 IOobject::NO_READ,
212                 IOobject::NO_WRITE
213             ),
214             mesh_,
215             dimensionedScalar("zero", dimensionSet(1, -1, -3, 0, 0), 0.0)
216         )
217     );
219     tsource().internalField() = shs_/runTime_.deltaT().value()/mesh_.V();
221     return tsource;
225 inline Random& spray::rndGen()
227     return rndGen_;
231 inline label spray::subCycles() const
233     return subCycles_;
237 inline const vector& spray::g() const
239     return g_;
243 inline const liquidMixture& spray::fuels() const
245     return fuels_;
249 inline const PtrList<gasThermoPhysics>& spray::gasProperties() const
251     return gasProperties_;
255 inline const basicMultiComponentMixture& spray::composition() const
257     return composition_;
261 inline const List<label>& spray::liquidToGasIndex() const
263     return liquidToGasIndex_;
267 inline const List<label>& spray::gasToLiquidIndex() const
269     return gasToLiquidIndex_;
273 inline const List<bool>& spray::isLiquidFuel() const
275     return isLiquidFuel_;
279 inline const bool& spray::twoD() const
281     return twoD_;
285 inline const vector& spray::axisOfSymmetry() const
287     return axisOfSymmetry_;
291 inline const vector& spray::axisOfWedge() const
293     return axisOfWedge_;
297 inline const vector& spray::axisOfWedgeNormal() const
299     return axisOfWedgeNormal_;
303 inline const scalar& spray::angleOfWedge() const
305     return angleOfWedge_;
309 inline const interpolation<vector>& spray::UInterpolator() const
311     return UInterpolator_;
315 inline const interpolation<scalar>& spray::rhoInterpolator() const
317     return rhoInterpolator_;
321 inline const interpolation<scalar>& spray::pInterpolator() const
323     return pInterpolator_;
327 inline const interpolation<scalar>& spray::TInterpolator() const
329     return TInterpolator_;
333 inline vectorField& spray::sms()
335     return sms_;
339 inline const vectorField& spray::sms() const
341     return sms_;
345 inline scalarField& spray::shs()
347     return shs_;
351 inline const scalarField& spray::shs() const
353     return shs_;
357 inline PtrList<scalarField>& spray::srhos()
359     return srhos_;
363 inline const PtrList<scalarField>& spray::srhos() const
365     return srhos_;
369 inline const scalar& spray::ambientPressure() const
371     return ambientPressure_;
375 inline const scalar& spray::ambientTemperature() const
377     return ambientTemperature_;
381 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
383 } // End namespace Foam
385 // ************************ vim: set sw=4 sts=4 et: ************************ //