28 template<
class ParcelType>
35 template<
class ParcelType>
42 template<
class ParcelType>
46 return particleProperties_;
50 template<
class ParcelType>
58 template<
class ParcelType>
65 template<
class ParcelType>
69 return cellOccupancy_;
73 template<
class ParcelType>
80 template<
class ParcelType>
84 return collisionSelectionRemainder_;
88 template<
class ParcelType>
96 template<
class ParcelType>
97 inline const typename ParcelType::constantProperties&
103 if (typeId < 0 || typeId >= constProps_.size())
105 FatalErrorIn(
"Foam::DsmcCloud<ParcelType>::constProps(label typeId)")
106 <<
"constantProperties for requested typeId index "
107 << typeId <<
" do not exist" <<
nl
111 return constProps_[typeId];
115 template<
class ParcelType>
122 template<
class ParcelType>
123 inline Foam::volScalarField::GeometricBoundaryField&
126 return q_.boundaryField();
130 template<
class ParcelType>
131 inline Foam::volVectorField::GeometricBoundaryField&
134 return fD_.boundaryField();
138 template<
class ParcelType>
139 inline Foam::volScalarField::GeometricBoundaryField&
142 return rhoN_.boundaryField();
146 template<
class ParcelType>
147 inline Foam::volScalarField::GeometricBoundaryField&
150 return rhoM_.boundaryField();
154 template<
class ParcelType>
155 inline Foam::volScalarField::GeometricBoundaryField&
158 return linearKE_.boundaryField();
162 template<
class ParcelType>
163 inline Foam::volScalarField::GeometricBoundaryField&
166 return internalE_.boundaryField();
170 template<
class ParcelType>
171 inline Foam::volScalarField::GeometricBoundaryField&
174 return iDof_.boundaryField();
178 template<
class ParcelType>
179 inline Foam::volVectorField::GeometricBoundaryField&
182 return momentum_.boundaryField();
186 template<
class ParcelType>
194 template<
class ParcelType>
202 template<
class ParcelType>
206 return binaryCollisionModel_;
210 template<
class ParcelType>
214 return binaryCollisionModel_();
218 template<
class ParcelType>
222 return wallInteractionModel_;
226 template<
class ParcelType>
230 return wallInteractionModel_();
234 template<
class ParcelType>
238 return inflowBoundaryModel_;
242 template<
class ParcelType>
246 return inflowBoundaryModel_();
250 template<
class ParcelType>
253 scalar sysMass = 0.0;
257 const ParcelType&
p = iter();
259 const typename ParcelType::constantProperties& cP = constProps
264 sysMass += cP.mass();
267 return nParticle_*sysMass;
271 template<
class ParcelType>
274 vector linearMomentum(vector::zero);
278 const ParcelType&
p = iter();
280 const typename ParcelType::constantProperties& cP = constProps
285 linearMomentum += cP.mass()*p.U();
288 return nParticle_*linearMomentum;
292 template<
class ParcelType>
296 scalar linearKineticEnergy = 0.0;
300 const ParcelType&
p = iter();
302 const typename ParcelType::constantProperties& cP = constProps
307 linearKineticEnergy += 0.5*cP.mass()*(p.U() & p.U());
310 return nParticle_*linearKineticEnergy;
314 template<
class ParcelType>
318 scalar internalEnergy = 0.0;
322 const ParcelType&
p = iter();
324 internalEnergy += p.Ei();
327 return nParticle_*internalEnergy;
331 template<
class ParcelType>
343 template<
class ParcelType>
355 template<
class ParcelType>
362 return sqrt(3.0*kb*temperature/mass);
366 template<
class ParcelType>
373 return sqrt(3.0*kb*temperature/mass);
377 template<
class ParcelType>
385 return sqrt(2.0*kb*temperature/mass);
389 template<
class ParcelType>
397 return sqrt(2.0*kb*temperature/mass);
401 template<
class ParcelType>
408 template<
class ParcelType>
415 template<
class ParcelType>
423 template<
class ParcelType>
430 template<
class ParcelType>
438 template<
class ParcelType>
446 template<
class ParcelType>
454 template<
class ParcelType>
462 template<
class ParcelType>
469 template<
class ParcelType>