1 /*---------------------------------------------------------------------------*\
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
5 \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
7 -------------------------------------------------------------------------------
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
13 the Free Software Foundation, either version 3 of the License, or
14 (at your 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
21 You should have received a copy of the GNU General Public License
22 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
24 \*---------------------------------------------------------------------------*/
26 // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
28 template<class ParcelType>
30 Foam::ReactingParcel<ParcelType>::constantProperties::constantProperties()
32 ParcelType::constantProperties(),
34 constantVolume_(false),
40 template<class ParcelType>
41 inline Foam::ReactingParcel<ParcelType>::constantProperties::constantProperties
43 const constantProperties& cp
46 ParcelType::constantProperties(cp),
48 constantVolume_(cp.constantVolume_),
54 template<class ParcelType>
55 inline Foam::ReactingParcel<ParcelType>::constantProperties::constantProperties
57 const dictionary& parentDict,
61 ParcelType::constantProperties(parentDict, readFields),
63 constantVolume_(false),
69 this->dict().lookup("pMin") >> pMin_;
70 this->dict().lookup("constantVolume") >> constantVolume_;
71 this->dict().lookup("Tvap") >> Tvap_;
72 this->dict().lookup("Tbp") >> Tbp_;
77 template<class ParcelType>
78 inline Foam::ReactingParcel<ParcelType>::constantProperties::constantProperties
80 const label parcelTypeId,
83 const scalar minParticleMass,
84 const scalar youngsModulus,
85 const scalar poissonsRatio,
89 const scalar epsilon0,
93 const Switch& constantVolume,
98 ParcelType::constantProperties
114 constantVolume_(constantVolume),
120 template<class ParcelType>
121 inline Foam::ReactingParcel<ParcelType>::ReactingParcel
123 const polyMesh& mesh,
124 const vector& position,
126 const label tetFaceI,
130 ParcelType(mesh, position, cellI, tetFaceI, tetPtI),
137 template<class ParcelType>
138 inline Foam::ReactingParcel<ParcelType>::ReactingParcel
140 const polyMesh& mesh,
141 const vector& position,
143 const label tetFaceI,
146 const scalar nParticle0,
148 const scalar dTarget0,
151 const vector& angularMomentum0,
152 const vector& torque0,
153 const scalarField& Y0,
154 const constantProperties& constProps
178 // Set initial parcel mass
179 mass0_ = this->mass();
183 // * * * * * * * * * constantProperties Member Functions * * * * * * * * * * //
185 template<class ParcelType>
187 Foam::ReactingParcel<ParcelType>::constantProperties::pMin() const
193 template<class ParcelType>
195 Foam::ReactingParcel<ParcelType>::constantProperties::constantVolume() const
197 return constantVolume_;
201 template<class ParcelType>
203 Foam::ReactingParcel<ParcelType>::constantProperties::Tvap() const
209 template<class ParcelType>
211 Foam::ReactingParcel<ParcelType>::constantProperties::Tbp() const
217 // * * * * * * * * * * ThermoParcel Member Functions * * * * * * * * * * * * //
219 template<class ParcelType>
220 inline Foam::scalar Foam::ReactingParcel<ParcelType>::mass0() const
226 template<class ParcelType>
227 inline const Foam::scalarField& Foam::ReactingParcel<ParcelType>::Y() const
233 template<class ParcelType>
234 inline Foam::scalar Foam::ReactingParcel<ParcelType>::pc() const
240 template<class ParcelType>
241 inline Foam::scalar& Foam::ReactingParcel<ParcelType>::pc()
247 template<class ParcelType>
248 inline Foam::scalar& Foam::ReactingParcel<ParcelType>::mass0()
254 template<class ParcelType>
255 inline Foam::scalarField& Foam::ReactingParcel<ParcelType>::Y()
261 // ************************************************************************* //