Particle for generating line-type sampled sets. More...


Classes | |
| class | trackingData |
| Tracking data class. More... | |
Public Member Functions | |
| sampledSetParticle (const polyMesh &mesh, const point &position, const label celli, label &nLocateBoundaryHits, const label seti, const scalar setF, const scalar distance) | |
| Construct from components. More... | |
| sampledSetParticle (Istream &is, bool readFields=true) | |
| Construct from Istream. More... | |
| sampledSetParticle (const sampledSetParticle &) | |
| Copy constructor. More... | |
| autoPtr< particle > | clone () const |
| Construct and return a clone. More... | |
| void | store (sampledSetCloud &, trackingData &) |
| Store a point. More... | |
| void | storeFace (sampledSetCloud &, trackingData &) |
| Store a point on a face. More... | |
| void | storeCell (sampledSetCloud &, trackingData &) |
| Store a point in a cell. More... | |
| bool | move (sampledSetCloud &, trackingData &) |
| Track all particles to their end point. More... | |
| void | hitWedgePatch (sampledSetCloud &, trackingData &) |
| Hit a wedge patch. Ends the track. More... | |
| void | hitSymmetryPlanePatch (sampledSetCloud &, trackingData &) |
| Hit a symmetry patch. Ends the track. More... | |
| void | hitSymmetryPatch (sampledSetCloud &, trackingData &) |
| Hit a symmetry plane patch. Ends the track. More... | |
| void | hitCyclicPatch (sampledSetCloud &, trackingData &) |
| Hit a cyclic patch. Ends the track. More... | |
| void | hitProcessorPatch (sampledSetCloud &, trackingData &) |
| Hit a processor patch. Transfers the particle if there is no. More... | |
| void | hitWallPatch (sampledSetCloud &, trackingData &) |
| Hit a wall patch. Ends the track. More... | |
| void | correctAfterParallelTransfer (sampledSetCloud &, trackingData &) |
| Do corrections to the particle and tracking data following a. More... | |
Public Member Functions inherited from particle | |
| TypeName ("particle") | |
| Runtime type information. More... | |
| particle (const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPti, const label facei) | |
| Construct from components. More... | |
| particle (const polyMesh &mesh, const vector &position, const label celli, label &nLocateBoundaryHits) | |
| Construct from a position and a cell, searching for the rest of the. More... | |
| particle (Istream &, bool readFields=true) | |
| Construct from Istream. More... | |
| particle (const particle &p) | |
| Construct as a copy. More... | |
| virtual | ~particle () |
| Destructor. More... | |
| label | getNewParticleIndex () const |
| Get unique particle creation id. More... | |
| const barycentric & | coordinates () const |
| Return current particle coordinates. More... | |
| label | cell () const |
| Return current cell particle is in. More... | |
| label | tetFace () const |
| Return current tet face particle is in. More... | |
| label | tetPt () const |
| Return current tet face particle is in. More... | |
| label | face () const |
| Return current face particle is on otherwise -1. More... | |
| label & | face () |
| Return current face particle is on otherwise -1. More... | |
| scalar | stepFraction () const |
| Return the fraction of time-step completed. More... | |
| scalar & | stepFraction () |
| Return the fraction of time-step completed. More... | |
| label | origProc () const |
| Return the originating processor ID. More... | |
| label & | origProc () |
| Return the originating processor ID. More... | |
| label | origId () const |
| Return the particle ID on the originating processor. More... | |
| label & | origId () |
| Return the particle ID on the originating processor. More... | |
| tetIndices | currentTetIndices (const polyMesh &mesh) const |
| Return the indices of the current tet that the. More... | |
| vector | normal (const polyMesh &mesh) const |
| Return the normal of the tri on tetFacei_ for the. More... | |
| bool | onFace () const |
| Is the particle on a face? More... | |
| bool | onInternalFace (const polyMesh &mesh) const |
| Is the particle on an internal face? More... | |
| bool | onBoundaryFace (const polyMesh &mesh) const |
| Is the particle on a boundary face? More... | |
| label | patch (const polyMesh &mesh) const |
| Return the index of patch that the particle is on. More... | |
| vector | position (const polyMesh &mesh) const |
| Return current particle position. More... | |
| void | reset (const scalar stepFraction) |
| Set the step fraction and clear the behind data in preparation. More... | |
| bool | locate (const polyMesh &mesh, const vector &position, label celli) |
| Locate the particle at the given position. More... | |
| scalar | track (const polyMesh &mesh, const vector &displacement, const scalar fraction) |
| Track along the displacement for a given fraction of the overall. More... | |
| scalar | trackToCell (const polyMesh &mesh, const vector &displacement, const scalar fraction) |
| As particle::track, but stops when a new cell is reached. More... | |
| scalar | trackToFace (const polyMesh &mesh, const vector &displacement, const scalar fraction) |
| As particle::track, but stops when a face is hit. More... | |
| template<class TrackCloudType > | |
| void | hitFace (const vector &displacement, const scalar fraction, TrackCloudType &cloud, trackingData &td) |
| Hit the current face. If the current face is internal than this. More... | |
| template<class TrackCloudType > | |
| scalar | trackToAndHitFace (const vector &displacement, const scalar fraction, TrackCloudType &cloud, trackingData &td) |
| Convenience function. Combines trackToFace and hitFace. More... | |
| vector | deviationFromMeshCentre (const polyMesh &mesh) const |
| Get the displacement from the mesh centre. Used to correct the. More... | |
| void | patchData (const polyMesh &mesh, vector &normal, vector &displacement) const |
| Get the normal and displacement of the current patch location. More... | |
| virtual void | transformProperties (const transformer &) |
| Transform the physical properties of the particle. More... | |
| template<class TrackCloudType > | |
| void | prepareForParallelTransfer (TrackCloudType &, trackingData &) |
| Make changes prior to a parallel transfer. Runs either. More... | |
| template<class TrackCloudType > | |
| void | correctAfterParallelTransfer (TrackCloudType &, trackingData &) |
| Make changes following a parallel transfer. Runs either. More... | |
| void | prepareForProcessorTransfer (trackingData &td) |
| Make changes prior to a transfer across a processor boundary. More... | |
| void | correctAfterProcessorTransfer (trackingData &td) |
| Make changes following a transfer across a processor boundary. More... | |
| void | prepareForNonConformalCyclicTransfer (const polyMesh &mesh, const label sendToPatch, const label sendToPatchFace, const vector &sendToPosition) |
| Make changes prior to a transfer across a non conformal cyclic. More... | |
| void | correctAfterNonConformalCyclicTransfer (const polyMesh &mesh, const label sendToPatch, labelList &patchNLocateBoundaryHits) |
| Make changes following a transfer across a non conformal cyclic. 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. More... | |
| template<class TrackCloudType > | |
| void | hitCyclicPatch (TrackCloudType &, trackingData &) |
| Overridable function to handle the particle hitting a. More... | |
| template<class TrackCloudType > | |
| bool | hitNonConformalCyclicPatch (const vector &displacement, const scalar fraction, const label patchi, TrackCloudType &cloud, trackingData &td) |
| Overridable function to handle the particle hitting an. More... | |
| template<class TrackCloudType > | |
| void | hitProcessorPatch (TrackCloudType &, trackingData &) |
| Overridable function to handle the particle hitting a. More... | |
| template<class TrackCloudType > | |
| void | hitWallPatch (TrackCloudType &, trackingData &) |
| Overridable function to handle the particle hitting a wallPatch. More... | |
| template<class TrackCloudType > | |
| void | hitBasicPatch (TrackCloudType &, trackingData &) |
| Overridable function to handle the particle hitting a basic. More... | |
| void | prepareForInteractionListReferral (const polyMesh &mesh, const transformer &transform) |
| Break the topology and store the cartesian position so that the. More... | |
| void | correctAfterInteractionListReferral (const polyMesh &mesh, const label celli) |
| Correct the topology after referral. Locates the particle. More... | |
| label | procTetPt (const polyMesh &mesh, const polyMesh &procMesh, const label procCell, const label procTetFace) const |
| Return the tet point appropriate for decomposition or. More... | |
| void | writePosition (Ostream &) const |
| Write the particle position and cell. More... | |
| template<class TrackCloudType > | |
| Foam::scalar | trackToAndHitFace (const vector &displacement, const scalar fraction, TrackCloudType &cloud, trackingData &td) |
Static Public Member Functions | |
| static autoPtr< sampledSetParticle > | New (Istream &is) |
| Construct from Istream and return. More... | |
Static Public Member Functions inherited from particle | |
| static string | propertyList () |
| static autoPtr< particle > | New (Istream &is) |
| Construct from Istream and return. 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... | |
Static Public Attributes | |
| static const bool | instantaneous = true |
| Sample sets are computed at an instant. More... | |
Static Public Attributes inherited from particle | |
| 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 const bool | instantaneous = false |
| Particles are not instantaneous by default. More... | |
Friends | |
| Ostream & | operator<< (Ostream &, const sampledSetParticle &) |
Particle for generating line-type sampled sets.
Definition at line 57 of file sampledSetParticle.H.
| sampledSetParticle | ( | const polyMesh & | mesh, |
| const point & | position, | ||
| const label | celli, | ||
| label & | nLocateBoundaryHits, | ||
| const label | seti, | ||
| const scalar | setF, | ||
| const scalar | distance | ||
| ) |
Construct from components.
Definition at line 31 of file sampledSetParticle.C.
Referenced by sampledSetParticle::clone(), and sampledSetParticle::New().

| sampledSetParticle | ( | Istream & | is, |
| bool | readFields = true |
||
| ) |
Construct from Istream.
Definition at line 51 of file sampledSetParticle.C.
References IOstream::check(), FUNCTION_NAME, and particle::readFields().

| sampledSetParticle | ( | const sampledSetParticle & | p | ) |
Copy constructor.
Definition at line 64 of file sampledSetParticle.C.
Construct and return a clone.
Reimplemented from particle.
Definition at line 170 of file sampledSetParticle.H.
References sampledSetParticle::sampledSetParticle().

|
inlinestatic |
Construct from Istream and return.
Definition at line 176 of file sampledSetParticle.H.
References sampledSetParticle::sampledSetParticle().

| void store | ( | sampledSetCloud & | cloud, |
| trackingData & | td | ||
| ) |
Store a point.
Definition at line 80 of file sampledSetParticle.C.
References DynamicList< T, SizeInc, SizeMult, SizeDiv >::append(), sampledSetParticle::trackingData::cells_, sampledSetParticle::trackingData::distances_, sampledSetParticle::trackingData::faces_, particle::trackingData::mesh, Foam::tracking::position(), and sampledSetParticle::trackingData::positions_.

| void storeFace | ( | sampledSetCloud & | cloud, |
| trackingData & | td | ||
| ) |
Store a point on a face.
Definition at line 93 of file sampledSetParticle.C.
| void storeCell | ( | sampledSetCloud & | cloud, |
| trackingData & | td | ||
| ) |
Store a point in a cell.
Definition at line 103 of file sampledSetParticle.C.
References DynamicList< T, SizeInc, SizeMult, SizeDiv >::append(), sampledSetParticle::trackingData::cells_, sampledSetParticle::trackingData::distances_, sampledSetParticle::trackingData::faces_, Foam::mag(), particle::trackingData::mesh, Foam::tracking::position(), and sampledSetParticle::trackingData::positions_.

| bool move | ( | sampledSetCloud & | cloud, |
| trackingData & | td | ||
| ) |
Track all particles to their end point.
Definition at line 122 of file sampledSetParticle.C.
References f(), particle::trackingData::keepParticle, Foam::mag(), particle::trackingData::mesh, Foam::onInternalFace, s(), particle::trackingData::sendToProc, sampledSetParticle::trackingData::set_, sampledSetParticle::trackingData::storeCells_, sampledSetParticle::trackingData::storeFaces_, and sampledSetParticle::trackingData::storeSet_.

| void hitWedgePatch | ( | sampledSetCloud & | , |
| trackingData & | td | ||
| ) |
Hit a wedge patch. Ends the track.
Definition at line 178 of file sampledSetParticle.C.
References Foam::labelMax.
| void hitSymmetryPlanePatch | ( | sampledSetCloud & | , |
| trackingData & | td | ||
| ) |
Hit a symmetry patch. Ends the track.
Definition at line 188 of file sampledSetParticle.C.
References Foam::labelMax.
| void hitSymmetryPatch | ( | sampledSetCloud & | , |
| trackingData & | td | ||
| ) |
Hit a symmetry plane patch. Ends the track.
Definition at line 198 of file sampledSetParticle.C.
References Foam::labelMax.
| void hitCyclicPatch | ( | sampledSetCloud & | cloud, |
| trackingData & | td | ||
| ) |
Hit a cyclic patch. Ends the track.
Definition at line 208 of file sampledSetParticle.C.
References Foam::labelMax.
| void hitProcessorPatch | ( | sampledSetCloud & | cloud, |
| trackingData & | td | ||
| ) |
Hit a processor patch. Transfers the particle if there is no.
transformation. Ends the track if there is a transformation.
Definition at line 218 of file sampledSetParticle.C.
References polyMesh::boundaryMesh(), particle::hitProcessorPatch(), Foam::labelMax, particle::trackingData::mesh, processorPolyPatch::transform(), and transformer::transformsPosition().

| void hitWallPatch | ( | sampledSetCloud & | , |
| trackingData & | td | ||
| ) |
Hit a wall patch. Ends the track.
Definition at line 241 of file sampledSetParticle.C.
References Foam::labelMax.
| void correctAfterParallelTransfer | ( | sampledSetCloud & | cloud, |
| trackingData & | td | ||
| ) |
Do corrections to the particle and tracking data following a.
transfer between processors
Definition at line 251 of file sampledSetParticle.C.
References particle::correctAfterParallelTransfer(), and sampledSetParticle::trackingData::storeFaces_.

|
friend |
|
static |
Sample sets are computed at an instant.
Definition at line 146 of file sampledSetParticle.H.