32 template<
class CloudType>
36 { resetMode::none,
"none" },
37 { resetMode::timeStep,
"timeStep" },
38 { resetMode::writeTime,
"writeTime" },
43 template<
class CloudType>
46 autoPtr<volScalarField>& fieldPtr,
47 const word& fieldName,
48 const dimensionSet& dims
53 fieldPtr->primitiveFieldRef() = scalar(0);
57 const fvMesh&
mesh = this->owner().mesh();
71 mesh.time().timeName(),
73 IOobject::READ_IF_PRESENT,
85 template<
class CloudType>
88 clearOrReset(massPtr_,
"mass",
dimMass);
89 clearOrReset(countPtr_,
"count",
dimless);
93 template<
class CloudType>
116 if (resetMode_ == resetMode::writeTime)
125 template<
class CloudType>
130 const word& modelName
138 resetModeNames_.getOrDefault
150 template<
class CloudType>
159 resetMode_(pii.resetMode_)
165 template<
class CloudType>
168 const typename parcelType::trackingData&
171 if (resetMode_ == resetMode::timeStep)
178 template<
class CloudType>
183 const typename parcelType::trackingData&
td 186 const label patchi =
pp.index();
187 const label facei =
pp.whichFace(
p.face());
189 massPtr_->boundaryFieldRef()[patchi][facei] +=
p.nParticle()*
p.mass();
190 countPtr_->boundaryFieldRef()[patchi][facei] += 1;
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
A list of keyword definitions, which are a keyword followed by a number of values (eg...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
wallPoints::trackData td(isBlockedFace, regionToBlockSize)
virtual bool postPatch(const parcelType &p, const polyPatch &pp, const typename parcelType::trackingData &td)
Post-patch hook.
const dimensionSet dimless
Dimensionless.
void clearOrReset(autoPtr< volScalarField > &fieldPtr, const word &fieldName, const dimensionSet &dims) const
Helper function to clear or reset fields.
static const Enum< resetMode > resetModeNames_
PatchInteractionFields(const dictionary &dict, CloudType &owner, const word &modelName)
Construct from dictionary.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for expressions::valueTypeCode::INVALID.
Creates volume fields whose boundaries are used to store patch interaction statistics.
A class for handling words, derived from Foam::string.
errorManip< error > abort(error &err)
virtual void write()
Write post-processing info.
virtual void preEvolve(const typename parcelType::trackingData &td)
Pre-evolve hook.
Enum is a wrapper around a list of names/values that represent particular enumeration (or int) values...
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
void reset()
Create|read|reset the fields.
const dimensionSet dimMass(1, 0, 0, 0, 0, 0, 0)
Templated base class for dsmc cloud.
Templated cloud function object base class.
uindirectPrimitivePatch pp(UIndirectList< face >(mesh.faces(), faceLabels), mesh.points())
static constexpr const zero Zero
Global zero (0)