Copy of base particle but without particle locating and preserving read location. More...
Classes | |
class | iNew |
Factory class to read-construct particles (for parallel transfer) More... | |
Public Member Functions | |
passivePositionParticle (const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPti) | |
Construct from components (known location) More... | |
passivePositionParticle (const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPti, const vector &position) | |
Construct from components (supplied location) More... | |
passivePositionParticle (const polyMesh &mesh, Istream &is, const bool readFields=true, const bool newFormat=true) | |
Construct from Istream. More... | |
passivePositionParticle (const passivePositionParticle &p) | |
Construct as copy. More... | |
virtual autoPtr< particle > | clone () const |
Return a clone. More... | |
const point & | location () const noexcept |
The cached particle position. More... | |
virtual void | writePosition (Ostream &os) const |
Write the particle position and cell id. More... | |
passivePositionParticle (const polyMesh &mesh, Istream &is, bool readFields, bool newFormat) | |
Construct from Istream in old format. More... | |
passivePositionParticle (const polyMesh &mesh, const vector &position, const label celli=-1) | |
Construct from a position and a cell. More... | |
passivePositionParticle (const passivePositionParticle &p) | |
Construct as copy. More... | |
virtual autoPtr< particle > | clone () const |
Return a clone. More... | |
const point & | cachedPosition () const noexcept |
Public Member Functions inherited from passiveParticle | |
passiveParticle (const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPti) | |
Construct from components. More... | |
passiveParticle (const polyMesh &mesh, const vector &position, const label celli=-1) | |
Construct from a position and a cell. More... | |
passiveParticle (const polyMesh &mesh, Istream &is, bool readFields=true, bool newFormat=true) | |
Construct from Istream. More... | |
passiveParticle (const passiveParticle &p) | |
Construct as copy. More... | |
Public Member Functions inherited from particle< Type > | |
TypeName ("particle") | |
Runtime type information. More... | |
particle (const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPti) | |
Construct from components. More... | |
particle (const polyMesh &mesh, const vector &position, const label celli=-1) | |
Construct from a position and a cell. More... | |
particle (const polyMesh &mesh, const vector &position, const label celli, const label tetFacei, const label tetPti, const bool doLocate=true) | |
Construct from position components. More... | |
particle (const polyMesh &mesh, Istream &, const bool readFields=true, const bool newFormat=true, const bool doLocate=true) | |
Construct from Istream. More... | |
particle (const particle &p, const polyMesh &mesh) | |
Construct as a copy with reference to a mesh. More... | |
particle (const particle &p) | |
Copy construct. More... | |
virtual | ~particle ()=default |
Destructor. More... | |
label | getNewParticleID () const |
Get unique particle creation id. More... | |
const polyMesh & | mesh () const noexcept |
Return the mesh database. More... | |
const barycentric & | coordinates () const noexcept |
Return current particle coordinates. More... | |
label | cell () const noexcept |
Return current cell particle is in. More... | |
label & | cell () noexcept |
Return current cell particle is in for manipulation. More... | |
label | tetFace () const noexcept |
Return current tet face particle is in. More... | |
label & | tetFace () noexcept |
Return current tet face particle is in for manipulation. More... | |
label | tetPt () const noexcept |
Return current tet face particle is in. More... | |
label & | tetPt () noexcept |
Return current tet face particle is in for manipulation. More... | |
label | face () const noexcept |
Return current face particle is on otherwise -1. More... | |
label & | face () noexcept |
Return current face particle is on for manipulation. More... | |
scalar | stepFraction () const noexcept |
Return the fraction of time-step completed. More... | |
scalar & | stepFraction () noexcept |
Return the fraction of time-step completed. More... | |
label | origProc () const noexcept |
Return the originating processor ID. More... | |
label & | origProc () noexcept |
Return the originating processor ID. More... | |
label | origId () const noexcept |
Return the particle ID on the originating processor. More... | |
label & | origId () noexcept |
Return the particle ID on the originating processor. More... | |
Pair< scalar > | stepFractionSpan () const |
Return the step fraction change within the overall time-step. More... | |
scalar | currentTimeFraction () const |
Return the current fraction within the timestep. This differs. More... | |
tetIndices | currentTetIndices () const noexcept |
Return indices of the current tet that the particle occupies. More... | |
barycentricTensor | currentTetTransform () const |
Return the current tet transformation tensor. More... | |
vector | normal () const |
The (unit) normal of the tri on tetFacei_ for the current tet. More... | |
bool | onFace () const noexcept |
Is the particle on a face? More... | |
bool | onInternalFace () const noexcept |
Is the particle on an internal face? More... | |
bool | onBoundaryFace () const noexcept |
Is the particle on a boundary face? More... | |
label | patch () const |
Return the index of patch that the particle is on. More... | |
vector | position () const |
Return current particle position. More... | |
void | reset () |
Reset particle data. More... | |
scalar | track (const vector &displacement, const scalar fraction) |
Track along the displacement for a given fraction of the overall. More... | |
scalar | trackToFace (const vector &displacement, const scalar fraction) |
As particle::track, but also stops on internal faces. More... | |
scalar | trackToTri (const vector &displacement, const scalar fraction, label &tetTriI) |
As particle::trackToFace, but also stops on tet triangles. On. More... | |
scalar | trackToStationaryTri (const vector &displacement, const scalar fraction, label &tetTriI) |
As particle::trackToTri, but for stationary meshes. More... | |
scalar | trackToMovingTri (const vector &displacement, const scalar fraction, label &tetTriI) |
As particle::trackToTri, but for moving meshes. More... | |
template<class TrackCloudType > | |
void | hitFace (const vector &direction, TrackCloudType &cloud, trackingData &td) |
Hit the current face. If the current face is internal than this. More... | |
template<class TrackCloudType > | |
void | trackToAndHitFace (const vector &direction, const scalar fraction, TrackCloudType &cloud, trackingData &td) |
Convenience function. Combines trackToFace and hitFace. More... | |
vector | deviationFromMeshCentre () const |
Get the displacement from the mesh centre. Used to correct the. More... | |
void | patchData (vector &n, vector &U) const |
Get the normal and velocity of the current patch location. More... | |
virtual void | transformProperties (const tensor &T) |
Transform the physical properties of the particle. More... | |
virtual void | transformProperties (const vector &separation) |
Transform the physical properties of the particle. More... | |
void | prepareForParallelTransfer () |
Convert global addressing to the processor patch local equivalents. More... | |
void | correctAfterParallelTransfer (const label patchi, trackingData &td) |
Convert processor patch addressing to the global equivalents. More... | |
void | prepareForInteractionListReferral (const vectorTensorTransform &transform) |
Break the topology and store the particle position so that the. More... | |
void | correctAfterInteractionListReferral (const label celli) |
Correct the topology after referral. The particle may still be. More... | |
label | procTetPt (const polyMesh &procMesh, const label procCell, const label procTetFace) const |
Return the tet point appropriate for decomposition or reconstruction. More... | |
void | autoMap (const vector &position, const mapPolyMesh &mapper) |
Map after a topology change. More... | |
void | relocate (const point &position, const label celli=-1) |
Set the addressing based on the provided position. More... | |
void | writeProperties (Ostream &os, const wordRes &filters, const word &delim, const bool namesOnly) const |
Write individual particle properties to stream. More... | |
void | writeCoordinates (Ostream &os) const |
Write the particle barycentric coordinates and cell info. More... | |
Friends | |
Ostream & | operator<< (Ostream &os, const passivePositionParticle &ppi) |
Additional Inherited Members | |
Static Public Member Functions inherited from particle< Type > | |
static string | propertyList () |
template<class Derived > | |
static autoPtr< particle > | Clone (const Derived &p) |
Clone a particle. More... | |
template<class Derived > | |
static autoPtr< particle > | Clone (const Derived &p, const polyMesh &mesh) |
Clone a particle with a mesh reference. More... | |
template<class Type > | |
static void | writePropertyName (Ostream &os, const word &name, const word &delim) |
Write the name representation to stream. More... | |
template<class Type > | |
static void | writeProperty (Ostream &os, const word &name, const Type &value, const bool nameOnly, const word &delim, const wordRes &filters=wordRes::null()) |
Write a named particle property to stream, optionally filtered based on its name. More... | |
template<class Type > | |
static void | writeProperty (Ostream &os, const word &name, const Field< Type > &values, const bool nameOnly, const word &delim, const wordRes &filters=wordRes::null()) |
Write a named particle property list to stream, optionally filtered based on its name. More... | |
template<class TrackCloudType > | |
static void | readFields (TrackCloudType &c) |
Read the fields associated with the owner cloud. More... | |
template<class TrackCloudType > | |
static void | writeFields (const TrackCloudType &c) |
Write the fields associated with the owner cloud. More... | |
template<class CloudType > | |
static void | readObjects (CloudType &c, const objectRegistry &obr) |
Read particle fields as objects from the obr registry. More... | |
template<class CloudType > | |
static void | writeObjects (const CloudType &c, objectRegistry &obr) |
Write particle fields as objects into the obr registry. More... | |
Static Public Attributes inherited from particle< Type > | |
static string | propertyList_ = Foam::particle::propertyList() |
String representation of properties. More... | |
static label | particleCount_ = 0 |
Cumulative particle counter - used to provide unique ID. More... | |
static bool | writeLagrangianCoordinates = true |
Write particle coordinates file (v1712 and later) Default is true. More... | |
static bool | writeLagrangianPositions |
Write particle positions file (v1706 format and earlier) Default is true (disable in etc/controlDict) More... | |
Protected Member Functions inherited from particle< Type > | |
void | readData (Istream &is, point &position, const bool readFields, const bool newFormat, const bool doLocate) |
Read particle from stream. Optionally (for old format) return. More... | |
template<class TrackCloudType > | |
bool | hitPatch (TrackCloudType &, trackingData &) |
Overridable function to handle the particle hitting a patch. More... | |
template<class TrackCloudType > | |
void | hitWedgePatch (TrackCloudType &, trackingData &) |
Overridable function to handle the particle hitting a wedgePatch. More... | |
template<class TrackCloudType > | |
void | hitSymmetryPlanePatch (TrackCloudType &, trackingData &) |
Overridable function to handle the particle hitting a. More... | |
template<class TrackCloudType > | |
void | hitSymmetryPatch (TrackCloudType &, trackingData &) |
Overridable function to handle the particle hitting a symmetryPatch. More... | |
template<class TrackCloudType > | |
void | hitCyclicPatch (TrackCloudType &, trackingData &) |
Overridable function to handle the particle hitting a cyclicPatch. More... | |
template<class TrackCloudType > | |
void | hitCyclicAMIPatch (TrackCloudType &, trackingData &, const vector &) |
Overridable function to handle the particle hitting a cyclicAMIPatch. More... | |
template<class TrackCloudType > | |
void | hitCyclicACMIPatch (TrackCloudType &, trackingData &, const vector &) |
Overridable function to handle the particle hitting a. More... | |
template<class TrackCloudType > | |
void | hitProcessorPatch (TrackCloudType &, trackingData &) |
Overridable function to handle the particle hitting a processorPatch. More... | |
template<class TrackCloudType > | |
void | hitWallPatch (TrackCloudType &, trackingData &) |
Overridable function to handle the particle hitting a wallPatch. More... | |
template<class TrackCloudType > | |
void | hitBoundaryFace (const vector &direction, TrackCloudType &cloud, trackingData &td) |
Dispatch function for boundary face interaction. Calls one of. More... | |
Copy of base particle but without particle locating and preserving read location.
Passive particle, transferring in old format (i.e. position instead of coordinates). Used for e.g. redistributePar.
Used in reconstructing lagrangian positions generated outside the mesh domain (can happen in extractEulerianParticles functionObject)
Definition at line 51 of file passivePositionParticle.H.
|
inline |
Construct from components (known location)
Definition at line 71 of file passivePositionParticle.H.
Referenced by passivePositionParticle::iNew::operator()().
|
inline |
Construct from components (supplied location)
Definition at line 87 of file passivePositionParticle.H.
|
inline |
Construct from Istream.
Definition at line 104 of file passivePositionParticle.H.
References particle< Type >::readData(), and particle< Type >::readFields().
|
inline |
Construct as copy.
Definition at line 136 of file passivePositionParticle.H.
|
inline |
Construct from Istream in old format.
Definition at line 71 of file passivePositionParticle.H.
|
inline |
Construct from a position and a cell.
Searches for the rest of the required topology.
Definition at line 88 of file passivePositionParticle.H.
|
inline |
Construct as copy.
Definition at line 101 of file passivePositionParticle.H.
Return a clone.
Reimplemented from particle< Type >.
Definition at line 146 of file passivePositionParticle.H.
References particle< Type >::Clone().
|
inlinenoexcept |
The cached particle position.
Definition at line 177 of file passivePositionParticle.H.
Referenced by passivePositionParticle::writePosition().
|
inlinevirtual |
Write the particle position and cell id.
Uses cached location() instead of calculated position()
Reimplemented from particle< Type >.
Definition at line 187 of file passivePositionParticle.H.
References IOstreamOption::ASCII, particle< Type >::cell(), FUNCTION_NAME, passivePositionParticle::location(), os(), p, particle< Type >::position(), s, and token::SPACE.
Return a clone.
Reimplemented from particle< Type >.
Definition at line 110 of file passivePositionParticle.H.
References particle< Type >::Clone().
|
inlinenoexcept |
Definition at line 143 of file passivePositionParticle.H.
|
friend |
Definition at line 152 of file passivePositionParticle.H.