Go to the documentation of this file.
36 template<
class ParcelType>
43 template<
class ParcelType>
50 template<
class ParcelType>
54 return particleProperties_;
58 template<
class ParcelType>
66 template<
class ParcelType>
73 template<
class ParcelType>
77 return cellOccupancy_;
81 template<
class ParcelType>
88 template<
class ParcelType>
92 return collisionSelectionRemainder_;
96 template<
class ParcelType>
104 template<
class ParcelType>
105 inline const typename ParcelType::constantProperties&
111 if (typeId < 0 || typeId >= constProps_.size())
114 <<
"constantProperties for requested typeId index "
115 << typeId <<
" do not exist" <<
nl
119 return constProps_[typeId];
123 template<
class ParcelType>
130 template<
class ParcelType>
131 inline Foam::volScalarField::Boundary&
134 return q_.boundaryFieldRef();
138 template<
class ParcelType>
139 inline Foam::volVectorField::Boundary&
142 return fD_.boundaryFieldRef();
146 template<
class ParcelType>
147 inline Foam::volScalarField::Boundary&
150 return rhoN_.boundaryFieldRef();
154 template<
class ParcelType>
155 inline Foam::volScalarField::Boundary&
158 return rhoM_.boundaryFieldRef();
162 template<
class ParcelType>
163 inline Foam::volScalarField::Boundary&
166 return linearKE_.boundaryFieldRef();
170 template<
class ParcelType>
171 inline Foam::volScalarField::Boundary&
174 return internalE_.boundaryFieldRef();
178 template<
class ParcelType>
179 inline Foam::volScalarField::Boundary&
182 return iDof_.boundaryFieldRef();
186 template<
class ParcelType>
187 inline Foam::volVectorField::Boundary&
190 return momentum_.boundaryFieldRef();
194 template<
class ParcelType>
202 template<
class ParcelType>
210 template<
class ParcelType>
214 return binaryCollisionModel_;
218 template<
class ParcelType>
222 return *binaryCollisionModel_;
226 template<
class ParcelType>
230 return *wallInteractionModel_;
234 template<
class ParcelType>
238 return *wallInteractionModel_;
242 template<
class ParcelType>
246 return *inflowBoundaryModel_;
250 template<
class ParcelType>
254 return *inflowBoundaryModel_;
258 template<
class ParcelType>
261 scalar sysMass = 0.0;
263 for (
const ParcelType&
p : *
this)
265 const typename ParcelType::constantProperties& cP = constProps
270 sysMass += cP.mass();
273 return nParticle_*sysMass;
277 template<
class ParcelType>
282 for (
const ParcelType&
p : *
this)
284 const typename ParcelType::constantProperties& cP = constProps
289 linearMomentum += cP.mass()*
p.U();
292 return nParticle_*linearMomentum;
296 template<
class ParcelType>
300 scalar linearKineticEnergy = 0.0;
302 for (
const ParcelType&
p : *
this)
304 const typename ParcelType::constantProperties& cP = constProps
309 linearKineticEnergy += 0.5*cP.mass()*(
p.U() &
p.U());
312 return nParticle_*linearKineticEnergy;
316 template<
class ParcelType>
320 scalar internalEnergy = 0.0;
322 for (
const ParcelType&
p : *
this)
324 internalEnergy +=
p.Ei();
327 return nParticle_*internalEnergy;
331 template<
class ParcelType>
343 template<
class ParcelType>
356 template<
class ParcelType>
367 template<
class ParcelType>
380 template<
class ParcelType>
392 template<
class ParcelType>
406 template<
class ParcelType>
413 template<
class ParcelType>
420 template<
class ParcelType>
428 template<
class ParcelType>
435 template<
class ParcelType>
443 template<
class ParcelType>
451 template<
class ParcelType>
459 template<
class ParcelType>
467 template<
class ParcelType>
474 template<
class ParcelType>
IOdictionary is derived from dictionary and IOobject to give the dictionary automatic IO functionalit...
volScalarField::Boundary & rhoMBF()
Return non-const mass density boundary field reference.
scalarField & collisionSelectionRemainder()
Return the collision selection remainder field. non-const.
scalar massInSystem() const
Total mass in system.
A class for handling words, derived from Foam::string.
volScalarField::Boundary & rhoNBF()
Return non-const number density boundary field reference.
const dimensionedScalar k
Boltzmann constant.
volScalarField & sigmaTcRMax()
Return the sigmaTcRMax field. non-const access to allow.
const List< typename ParcelType::constantProperties > & constProps() const
Return all of the constant properties.
Templated DSMC particle collision class.
A class for managing temporary objects.
static constexpr const zero Zero
Global zero (0)
Different types of constants.
volScalarField::Boundary & qBF()
Return non-const heat flux boundary field reference.
const volScalarField & boundaryT() const
Return macroscopic temperature.
const volVectorField & boundaryU() const
Return macroscopic velocity.
volVectorField::Boundary & momentumBF()
Return non-const momentum density boundary field reference.
Random & rndGen()
Return reference to the random object.
volVectorField::Boundary & fDBF()
Return non-const force density at boundary field reference.
void clear()
Clear the Cloud.
const List< word > & typeIdList() const
Return the idList.
const word & cloudName() const
Return the cloud type.
scalar linearKineticEnergyOfSystem() const
Total linear kinetic energy in the system.
const fvMesh & mesh() const
Return reference to the mesh.
const volScalarField & iDof() const
Return the average internal degrees of freedom field.
const volScalarField & rhoN() const
Return the real particle number density field.
volScalarField::Boundary & iDofBF()
Return non-const internal degree of freedom density boundary.
const InflowBoundaryModel< DSMCCloud< ParcelType > > & inflowBoundary() const
Return reference to wall interaction model.
void clear()
Clear the contents of the list.
const List< DynamicList< ParcelType * > > & cellOccupancy() const
Return the cell occupancy addressing.
scalar maxwellianRMSSpeed(scalar temperature, scalar mass) const
RMS particle speed.
Templated wall interaction model class.
const volScalarField & internalE() const
Return the internal energy density field.
Mesh data needed to do the Finite Volume discretisation.
const volScalarField & q() const
Return heat flux at surface field.
errorManip< error > abort(error &err)
scalar internalEnergyOfSystem() const
Total internal energy in the system.
scalar maxwellianAverageSpeed(scalar temperature, scalar mass) const
Average particle speed.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
volScalarField::Boundary & internalEBF()
Return non-const internal energy density boundary field.
volScalarField::Boundary & linearKEBF()
Return non-const linear kinetic energy density boundary.
constexpr scalar pi(M_PI)
dimensionedScalar sqrt(const dimensionedScalar &ds)
const volVectorField & momentum() const
Return the momentum density field.
scalar maxwellianMostProbableSpeed(scalar temperature, scalar mass) const
Most probable speed.
const volScalarField & rhoM() const
Return the particle mass density field.
Templated inflow boundary model class.
const BinaryCollisionModel< DSMCCloud< ParcelType > > & binaryCollision() const
Return reference to binary elastic collision model.
const volScalarField & dsmcRhoN() const
Return the field of number of DSMC particles.
const volScalarField & linearKE() const
Return the total linear kinetic energy (translational and.
scalar nParticle() const
Return the number of real particles represented by one.
vector linearMomentumOfSystem() const
Total linear momentum of the system.
const volVectorField & fD() const
Return force density at surface field.
const WallInteractionModel< DSMCCloud< ParcelType > > & wallInteraction() const
Return reference to wall interaction model.
const IOdictionary & particleProperties() const
Return particle properties dictionary.