rays Class Reference
Inheritance diagram for rays:
Collaboration diagram for rays:

Public Member Functions

 TypeName ("rays")
 Runtime type information. More...
 
 rays (const bool reverse)
 Construct from components. More...
 
 ~rays ()
 Destructor. More...
 
virtual tmpNrc< List< DynamicList< scalar > > > srcWeights (const primitivePatch &srcPatch) const
 For each source face, the coupled target weights. More...
 
virtual tmpNrc< List< DynamicList< scalar > > > tgtWeights (const primitivePatch &tgtPatch) const
 For each target face, the coupled source weights. More...
 
procFace srcToTgtRay (const primitiveOldTimePatch &tgtPatch, const scalar fraction, const label srcFacei, const vector &srcP, const vector &srcN, point &tgtP) const
 Compute a ray intersection from the source side to the target. More...
 
procFace tgtToSrcRay (const primitiveOldTimePatch &srcPatch, const scalar fraction, const label tgtFacei, const vector &tgtP, const vector &tgtN, point &srcP) const
 Compute a ray intersection from the target side to the source. More...
 
- Public Member Functions inherited from patchToPatch
 TypeName ("patchToPatch")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, patchToPatch, bool,(const bool reverse),(reverse))
 Declare runtime constructor selection table. More...
 
 patchToPatch (const bool reverse)
 Construct from components. More...
 
 patchToPatch (const patchToPatch &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~patchToPatch ()
 Destructor. More...
 
bool reverse () const
 Flag to indicate that the two patches are co-directional and. More...
 
label singleProcess () const
 Index of the processor holding all faces of the patchToPatch,. More...
 
bool isSingleProcess () const
 Is this intersection on a single process? More...
 
List< List< procFace > > srcTgtProcFaces () const
 For each source face, the coupled target procs and faces. More...
 
List< List< procFace > > tgtSrcProcFaces () const
 For each target face, the coupled source procs and faces. More...
 
void update (const primitiveOldTimePatch &srcPatch, const vectorField &srcPointNormals, const vectorField &srcPointNormals0, const primitiveOldTimePatch &tgtPatch, const transformer &tgtToSrc=NullObjectRef< transformer >())
 Update addressing and weights for the given patches. More...
 
void update (const primitivePatch &srcPatch, const vectorField &srcPointNormals, const primitivePatch &tgtPatch, const transformer &tgtToSrc=NullObjectRef< transformer >())
 Update addressing and weights for the given patches. More...
 
void operator= (const patchToPatch &)=delete
 Disallow default bitwise assignment. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from patchToPatch
static autoPtr< patchToPatchNew (const word &patchToPatchType, const bool reverse)
 Select from name. More...
 
- Protected Member Functions inherited from patchToPatch
treeBoundBox srcBox (const primitiveOldTimePatch &srcPatch, const vectorField &srcPointNormals, const vectorField &srcPointNormals0, const label srcFacei) const
 Get the bound box for a source face. More...
 
treeBoundBox srcBox (const primitiveOldTimePatch &srcPatch, const vectorField &srcPointNormals, const vectorField &srcPointNormals0) const
 Get the bound box for the source patch. More...
 
treeBoundBox tgtBox (const primitiveOldTimePatch &tgtPatch, const label tgtFacei) const
 Get the bound box for a target face. More...
 
treeBoundBox tgtBox (const primitiveOldTimePatch &tgtPatch) const
 Get the bound box for the target patch. More...
 
bool findOrIntersectFaces (const primitiveOldTimePatch &srcPatch, const vectorField &srcPointNormals, const vectorField &srcPointNormals0, const primitiveOldTimePatch &tgtPatch, const label srcFacei, const label tgtFacei)
 Intersect two faces. More...
 
label intersectPatchQueue (const primitiveOldTimePatch &srcPatch, const vectorField &srcPointNormals, const vectorField &srcPointNormals0, const primitiveOldTimePatch &tgtPatch, const bool isSrc, const DynamicList< labelPair > &queue, labelList &faceComplete, DynamicList< labelPair > &otherQueue, const labelList &otherFaceComplete, boolList &otherFaceQueued, boolList &otherFaceVisited)
 Intersect a queue of source-target face pairs. Update completion. More...
 
void intersectPatches (const primitiveOldTimePatch &srcPatch, const vectorField &srcPointNormals, const vectorField &srcPointNormals0, const primitiveOldTimePatch &tgtPatch)
 Intersect the patches. More...
 
void calcSingleProcess (const primitiveOldTimePatch &srcPatch, const primitiveOldTimePatch &tgtPatch)
 Determine whether or not the intersection of the given patches. More...
 
labelListList tgtPatchSendFaces (const primitiveOldTimePatch &srcPatch, const vectorField &srcPointNormals, const vectorField &srcPointNormals0, const primitiveOldTimePatch &tgtPatch) const
 Determine which target faces need to be sent to the source. More...
 
labelListList srcPatchSendFaces () const
 Determine which source faces need to be sent to the target. More...
 
distributionMap patchDistributionMap (labelListList &&sendFaces) const
 Create a distribution map from a list-list of faces to be sent. More...
 
void distributePatch (const distributionMap &map, List< procFace > &localProcFaces) const
 Distribute a patch given its distribution map. Just generate. More...
 
PrimitiveOldTimePatch< faceList, pointFielddistributePatch (const distributionMap &map, const primitiveOldTimePatch &patch, List< procFace > &localProcFaces) const
 Distribute a patch given its distribution map. More...
 
virtual void initialise (const primitiveOldTimePatch &srcPatch, const vectorField &srcPointNormals, const vectorField &srcPointNormals0, const primitiveOldTimePatch &tgtPatch)
 Initialisation. More...
 
virtual void rDistributeTgt (const primitiveOldTimePatch &tgtPatch, const distributionMap &tgtMap)
 Send data that resulted from an intersection between the source. More...
 
- Static Protected Member Functions inherited from patchToPatch
template<class SubListA , class SubListB >
static void transferListList (List< SubListA > &a, List< SubListB > &b)
 Transfer list-list b into list-list a. More...
 
template<class Type >
static void rDistributeListList (const label size, const distributionMap &map, List< List< Type >> &data)
 Reverse distribute a list-list given the map. More...
 
template<class Type >
static void rDistributeListList (const label size, const distributionMap &map, List< DynamicList< Type >> &data)
 Reverse distribute a dynamic list-list given the map. More...
 
static List< List< procFace > > localFacesToProcFaces (const List< DynamicList< label >> &localFaces, const List< procFace > &map=NullObjectRef< List< procFace >>())
 Map local faces to proc faces. More...
 
static List< DynamicList< label > > procFacesToLocalFaces (const List< List< procFace >> &procFaces, const HashTable< label, procFace, Hash< procFace >> &map)
 Map proc faces to local faces. More...
 
- Protected Attributes inherited from patchToPatch
const bool reverse_
 Flag to indicate that the two patches are co-directional and. More...
 
label singleProcess_
 Index of the processor holding all faces of the patchToPatch, or -1. More...
 
autoPtr< List< procFace > > localSrcProcFacesPtr_
 When running in parallel, a map from local source face index to. More...
 
autoPtr< List< procFace > > localTgtProcFacesPtr_
 When running in parallel, a map from local target face index to. More...
 
List< DynamicList< label > > srcLocalTgtFaces_
 For each source face, the coupled local target faces. More...
 
List< DynamicList< label > > tgtLocalSrcFaces_
 For each target face, the coupled local source faces. More...
 

Detailed Description

Definition at line 53 of file raysPatchToPatch.H.

Constructor & Destructor Documentation

◆ rays()

rays ( const bool  reverse)

Construct from components.

Definition at line 248 of file raysPatchToPatch.C.

◆ ~rays()

~rays ( )

Destructor.

Definition at line 258 of file raysPatchToPatch.C.

Member Function Documentation

◆ TypeName()

TypeName ( "rays"  )

Runtime type information.

◆ srcWeights()

Foam::tmpNrc< Foam::List< Foam::DynamicList< Foam::scalar > > > srcWeights ( const primitivePatch srcPatch) const
virtual

For each source face, the coupled target weights.

Implements patchToPatch.

Definition at line 265 of file raysPatchToPatch.C.

References NotImplemented.

◆ tgtWeights()

Foam::tmpNrc< Foam::List< Foam::DynamicList< Foam::scalar > > > tgtWeights ( const primitivePatch tgtPatch) const
virtual

For each target face, the coupled source weights.

Implements patchToPatch.

Definition at line 273 of file raysPatchToPatch.C.

References NotImplemented, and rays::srcToTgtRay().

Here is the call graph for this function:

◆ srcToTgtRay()

Foam::patchToPatch::procFace srcToTgtRay ( const primitiveOldTimePatch tgtPatch,
const scalar  fraction,
const label  srcFacei,
const vector srcP,
const vector srcN,
point tgtP 
) const

Compute a ray intersection from the source side to the target.

Definition at line 281 of file raysPatchToPatch.C.

References rays::tgtToSrcRay().

Referenced by nonConformalCyclicPolyPatch::ray(), and rays::tgtWeights().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ tgtToSrcRay()

Foam::patchToPatch::procFace tgtToSrcRay ( const primitiveOldTimePatch srcPatch,
const scalar  fraction,
const label  tgtFacei,
const vector tgtP,
const vector tgtN,
point srcP 
) const

Compute a ray intersection from the target side to the source.

Definition at line 307 of file raysPatchToPatch.C.

Referenced by nonConformalCyclicPolyPatch::ray(), and rays::srcToTgtRay().

Here is the caller graph for this function:

The documentation for this class was generated from the following files: