Go to the documentation of this file.
37 template<
class CloudType>
46 this->owner().
name() +
":collisionDensity",
61 this->owner().
name() +
":collisionDensityRate",
68 (collisionDensity_ - collisionDensity0_)
69 /(this->owner().
mesh().time().value() - time0_)
73 collisionDensity0_ == collisionDensity_;
80 template<
class CloudType>
89 minSpeed_(
dict.getOrDefault<scalar>(
"minSpeed", -1)),
93 volScalarField::Internal::null(),
99 volScalarField::Internal::null(),
102 time0_(this->owner().
mesh().time().value())
104 collisionDensity_ == 0;
105 collisionDensity0_ == 0;
109 this->owner().
name() +
":collisionDensity",
111 this->owner().
mesh(),
125 template<
class CloudType>
132 minSpeed_(ppm.minSpeed_),
133 collisionDensity_(ppm.collisionDensity_),
134 collisionDensity0_(ppm.collisionDensity0_),
141 template<
class CloudType>
149 const label patchi = pp.
index();
150 const label patchFacei =
p.face() - pp.
start();
153 this->owner().patchData(
p, pp, nw, Up);
155 const scalar speed = (
p.U() - Up) & nw;
156 if (speed > minSpeed_)
158 collisionDensity_[patchi][patchFacei] +=
Defines the attributes of an object for which implicit objectRegistry management is supported,...
void write()
Write post-processing info.
const dimensionSet dimless(0, 0, 0, 0, 0, 0, 0)
Dimensionless.
A class for handling words, derived from Foam::string.
static constexpr const zero Zero
Global zero (0)
bool typeHeaderOk(const bool checkType=true, const bool search=true, const bool verbose=true)
Read header (uses typeFilePath to find file) and check its info.
Function object which generates fields of the number and rate of collisions per unit area on all patc...
const Type & value() const
Return const reference to value.
virtual void postPatch(const parcelType &p, const polyPatch &pp, bool &keepParticle)
Post-patch hook.
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
const dimensionSet dimArea(sqr(dimLength))
const surfaceScalarField & magSf() const
Return cell face area magnitudes.
const fvMesh & mesh() const
Return reference to the mesh.
A patch is a list of labels that address the faces in the global face list.
word name(const complex &c)
Return string representation of complex.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
Templated base class for dsmc cloud.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
This boundary condition is not designed to be evaluated; it is assmued that the value is assigned via...
label start() const
Return start label of this patch in the polyMesh face list.
PatchCollisionDensity(const dictionary &dict, CloudType &owner, const word &modelName)
Construct from dictionary.
Templated cloud function object base class.
const Time & time() const
Return the top-level database.
Operations on lists of strings.
Various functions to operate on Lists.
label index() const
The index of this patch in the boundaryMesh.
const Boundary & boundaryField() const
Return const-reference to the boundary field.