40 const scalar trackTime
48 scalar tEnd = (1.0 - stepFraction())*trackTime;
55 Info<<
"Time = " << mesh_.time().timeName()
56 <<
" trackTime = " << trackTime
58 <<
" steptFraction() = " << stepFraction() <<
endl;
62 scalar dt =
min(dtMax, tEnd);
68 dt *= trackToFace(position() + dt*U_, td);
71 stepFraction() = 1.0 - tEnd/trackTime;
79 scalar magUr =
mag(Uc - U_);
82 scalar
Re = magUr*d_/nuc;
86 ReFunc += 0.15*
pow(Re, 0.687);
89 scalar Dc = (24.0*nuc/d_)*ReFunc*(3.0/4.0)*(rhoc/(d_*rhop));
91 U_ = (U_ + dt*(Dc*Uc + (1.0 - rhoc/rhop)*td.
g()))/(1.0 + dt*Dc);
95 if (isA<processorPolyPatch>(pbMesh[patch(
face())]))
144 U_ -= (1.0 + td.
cloud().
e())*Un*nw;
const interpolationCellPoint< vector > & UInterp() const
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
A face is a list of labels corresponding to mesh vertices.
triPointRef faceTri(const polyMesh &mesh) const
Return the geometry corresponding to the tri on the.
void hitProcessorPatch(const processorPolyPatch &, trackingData &td)
Overridable function to handle the particle hitting a.
Ostream & endl(Ostream &os)
Add newline and flush stream.
virtual void transformProperties(const tensor &T)
Transform the physical properties of the particle.
const interpolationCellPoint< scalar > & rhoInterp() const
Neighbour processor patch.
CloudType & cloud()
Return a reference to the cloud.
bool move(trackingData &, const scalar)
Move.
Storage and named access for the indices of a tet which is part of the decomposition of a cell...
bool keepParticle
Flag to indicate whether to keep particle (false = delete)
virtual scalar wallImpactDistance(const vector &n) const
The nearest distance to a wall that.
defineTemplateTypeNameAndDebug(IOPtrList< ensightPart >, 0)
Type interpolate(const cellPointWeight &cpw) const
Interpolate field for the given cellPointWeight.
Class used to pass tracking data to the trackToFace function.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
dimensioned< Type > min(const dimensioned< Type > &, const dimensioned< Type > &)
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
A cell is defined as a list of faces with extra functionality.
dimensioned< scalar > mag(const dimensioned< Type > &)
bool switchProcessor
Flag to switch processor.
bool hitPatch(const polyPatch &, trackingData &td, const label patchi, const scalar trackFraction, const tetIndices &tetIs)
Overridable function to handle the particle hitting a patch.
A patch is a list of labels that address the faces in the global face list.
const interpolationCellPoint< scalar > & nuInterp() const
virtual void transformProperties(const tensor &T)
Transform the physical properties of the particle.
scalarField Re(const UList< complex > &cf)
void hitWallPatch(const wallPolyPatch &, trackingData &td, const tetIndices &)
Overridable function to handle the particle hitting a wallPatch.
dimensionSet transform(const dimensionSet &)
vector normal() const
Return vector normal.