The coupledPolyPatch is an abstract base class for patches that couple regions of the computational domain e.g. cyclic and processor-processor links. More...
Public Types | |
enum | transformType { UNKNOWN, ROTATIONAL, TRANSLATIONAL, COINCIDENTFULLMATCH, NOORDERING } |
![]() | |
enum | surfaceTopo { MANIFOLD, OPEN, ILLEGAL, MANIFOLD, OPEN, ILLEGAL } |
Enumeration defining the surface type. Used in check routines. More... | |
enum | surfaceTopo { MANIFOLD, OPEN, ILLEGAL, MANIFOLD, OPEN, ILLEGAL } |
Enumeration defining the surface type. Used in check routines. More... | |
typedef Face | FaceType |
typedef FaceList< Face > | FaceListType |
typedef PointField | PointFieldType |
typedef Face | FaceType |
typedef FaceList< Face > | FaceListType |
typedef PointField | PointFieldType |
Public Member Functions | |
TypeName ("coupled") | |
Runtime type information. More... | |
coupledPolyPatch (const word &name, const label size, const label start, const label index, const polyBoundaryMesh &bm, const word &patchType, const transformType transform) | |
Construct from components. More... | |
coupledPolyPatch (const word &name, const dictionary &dict, const label index, const polyBoundaryMesh &bm, const word &patchType) | |
Construct from dictionary. More... | |
coupledPolyPatch (const coupledPolyPatch &, const polyBoundaryMesh &) | |
Construct as copy, resetting the boundary mesh. More... | |
coupledPolyPatch (const coupledPolyPatch &pp, const polyBoundaryMesh &bm, const label index, const label newSize, const label newStart) | |
Construct given the original patch and resetting the. More... | |
coupledPolyPatch (const coupledPolyPatch &pp, const polyBoundaryMesh &bm, const label index, const labelUList &mapAddressing, const label newStart) | |
Construct given the original patch and a map. More... | |
virtual | ~coupledPolyPatch () |
Destructor. More... | |
virtual bool | coupled () const |
Return true because this patch is coupled. More... | |
virtual bool | owner () const =0 |
Does this side own the patch ? More... | |
virtual bool | neighbour () const |
Does the coupled side own the patch ? More... | |
virtual transformType | transform () const |
Type of transform. More... | |
virtual transformType & | transform () |
Type of transform. More... | |
virtual void | transformPosition (pointField &) const =0 |
Transform a patch-based position from other side to this side. More... | |
virtual void | transformPosition (point &, const label facei) const =0 |
Transform a patch-based position from other side to this side. More... | |
virtual bool | separated () const |
Are the planes separated. More... | |
virtual const vectorField & | separation () const |
If the planes are separated the separation vector. More... | |
virtual bool | parallel () const |
Are the cyclic planes parallel. More... | |
virtual const tensorField & | forwardT () const |
Return face transformation tensor. More... | |
virtual const tensorField & | reverseT () const |
Return neighbour-cell transformation tensor. More... | |
virtual const boolList & | collocated () const |
Are faces collocated. Either size 0,1 or length of patch. More... | |
scalar | matchTolerance () const |
virtual void | calcGeometry (const primitivePatch &referPatch, const pointField &thisCtrs, const vectorField &thisAreas, const pointField &thisCc, const pointField &nbrCtrs, const vectorField &nbrAreas, const pointField &nbrCc)=0 |
Calculate the patch geometry. More... | |
virtual void | initOrder (PstreamBuffers &, const primitivePatch &) const =0 |
Initialize ordering for primitivePatch. Does not. More... | |
virtual bool | order (PstreamBuffers &, const primitivePatch &, labelList &faceMap, labelList &rotation) const =0 |
Return new ordering for primitivePatch. More... | |
virtual void | write (Ostream &) const |
Write the polyPatch data as a dictionary. More... | |
![]() | |
TypeName ("patch") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, polyPatch, word,(const word &name, const label size, const label start, const label index, const polyBoundaryMesh &bm, const word &patchType),(name, size, start, index, bm, patchType)) | |
declareRunTimeSelectionTable (autoPtr, polyPatch, dictionary,(const word &name, const dictionary &dict, const label index, const polyBoundaryMesh &bm, const word &patchType),(name, dict, index, bm, patchType)) | |
polyPatch (const word &name, const label size, const label start, const label index, const polyBoundaryMesh &bm, const word &patchType) | |
Construct from components. More... | |
polyPatch (const word &name, const label size, const label start, const label index, const polyBoundaryMesh &bm, const word &physicalType, const wordList &inGroups) | |
Construct from components. More... | |
polyPatch (const word &name, const dictionary &dict, const label index, const polyBoundaryMesh &bm, const word &patchType) | |
Construct from dictionary. More... | |
polyPatch (const polyPatch &, const polyBoundaryMesh &) | |
Construct as copy, resetting the boundary mesh. More... | |
polyPatch (const polyPatch &pp, const polyBoundaryMesh &bm, const label index, const label newSize, const label newStart) | |
Construct given the original patch and resetting the. More... | |
polyPatch (const polyPatch &pp, const polyBoundaryMesh &bm, const label index, const labelUList &mapAddressing, const label newStart) | |
Construct given the original patch and a map. More... | |
polyPatch (const polyPatch &) | |
Construct as copy. More... | |
virtual autoPtr< polyPatch > | clone (const polyBoundaryMesh &bm) const |
Construct and return a clone, resetting the boundary mesh. More... | |
virtual autoPtr< polyPatch > | clone (const polyBoundaryMesh &bm, const label index, const label newSize, const label newStart) const |
Construct and return a clone, resetting the face list. More... | |
virtual autoPtr< polyPatch > | clone (const polyBoundaryMesh &bm, const label index, const labelUList &mapAddressing, const label newStart) const |
Construct and return a clone, resetting the face list. More... | |
virtual | ~polyPatch () |
Destructor. More... | |
label | start () const |
Return start label of this patch in the polyMesh face list. More... | |
const polyBoundaryMesh & | boundaryMesh () const |
Return boundaryMesh reference. More... | |
template<class T > | |
const UIndirectList< T > | patchInternalList (const UList< T > &internalValues) const |
Extract face cell data. More... | |
template<class T > | |
const List< T >::subList | patchSlice (const UList< T > &l) const |
Slice list to patch. More... | |
template<class T > | |
const Field< T >::subField | patchSlice (const Field< T > &l) const |
Slice Field to patch. More... | |
const vectorField::subField | faceCentres () const |
Return face centres. More... | |
const vectorField::subField | faceAreas () const |
Return face normals. More... | |
tmp< vectorField > | faceCellCentres () const |
Return face cell centres. More... | |
const labelUList & | faceCells () const |
Return face-cell addressing. More... | |
const labelList & | meshEdges () const |
Return global edge index for local edges. More... | |
virtual void | clearAddressing () |
Clear addressing. More... | |
label | whichFace (const label l) const |
Return label of face in patch from global face label. More... | |
void | operator= (const polyPatch &) |
Assignment. More... | |
![]() | |
patchIdentifier (const word &name, const label index, const word &physicalType=word::null, const wordList &inGroups=wordList()) | |
Construct from components. More... | |
patchIdentifier (const word &name, const dictionary &, const label index) | |
Construct from dictionary. More... | |
patchIdentifier (const patchIdentifier &, const label index) | |
Construct from geometric patch, resetting the index. More... | |
virtual | ~patchIdentifier () |
Destructor. More... | |
const word & | name () const |
Return name. More... | |
word & | name () |
Return name for modification. More... | |
const word & | physicalType () const |
Return the optional physical type of the patch. More... | |
word & | physicalType () |
Return the optional physical type of the patch for modification. More... | |
label | index () const |
Return the index of this patch in the boundaryMesh. More... | |
label & | index () |
Return the index of this patch in the boundaryMesh for modification. More... | |
const wordList & | inGroups () const |
Return the optional groups patch belongs to. More... | |
wordList & | inGroups () |
Return the optional groups patch belongs to for modification. More... | |
bool | inGroup (const word &) const |
Test if in group. More... | |
void | write (Ostream &) const |
Write patchIdentifier as a dictionary. More... | |
![]() | |
PrimitivePatch (const FaceList< Face > &faces, const Field< PointType > &points) | |
Construct from components. More... | |
PrimitivePatch (FaceList< Face > &faces, Field< PointType > &points, const bool reUse) | |
Construct from components, reuse storage. More... | |
PrimitivePatch (const PrimitivePatch< Face, FaceList, PointField, PointType > &) | |
Construct as copy. More... | |
virtual | ~PrimitivePatch () |
void | clearOut () |
void | clearGeom () |
void | clearTopology () |
void | clearPatchMeshAddr () |
const Field< PointType > & | points () const |
Return reference to global points. More... | |
label | nPoints () const |
Return number of points supporting patch faces. More... | |
label | nEdges () const |
Return number of edges in patch. More... | |
const edgeList & | edges () const |
Return list of edges, address into LOCAL point list. More... | |
label | nInternalEdges () const |
Number of internal edges. More... | |
bool | isInternalEdge (const label edgeI) const |
Is internal edge? More... | |
const labelList & | boundaryPoints () const |
Return list of boundary points,. More... | |
const labelListList & | faceFaces () const |
Return face-face addressing. More... | |
const labelListList & | edgeFaces () const |
Return edge-face addressing. More... | |
const labelListList & | faceEdges () const |
Return face-edge addressing. More... | |
const labelListList & | pointEdges () const |
Return point-edge addressing. More... | |
const labelListList & | pointFaces () const |
Return point-face addressing. More... | |
const List< Face > & | localFaces () const |
Return patch faces addressing into local point list. More... | |
const labelList & | meshPoints () const |
Return labelList of mesh points in patch. More... | |
const Map< label > & | meshPointMap () const |
Mesh point map. Given the global point index find its. More... | |
const Field< PointType > & | localPoints () const |
Return pointField of points in patch. More... | |
const labelList & | localPointOrder () const |
Return orders the local points for most efficient search. More... | |
label | whichPoint (const label gp) const |
Given a global point index, return the local point. More... | |
label | whichEdge (const edge &e) const |
Given an edge in local point labels, return its index. More... | |
labelList | meshEdges (const edgeList &allEdges, const labelListList &cellEdges, const labelList &faceCells) const |
Return labels of patch edges in the global edge list using. More... | |
labelList | meshEdges (const edgeList &allEdges, const labelListList &pointEdges) const |
Return labels of patch edges in the global edge list using. More... | |
const Field< PointType > & | faceCentres () const |
Return face centres for patch. More... | |
const Field< PointType > & | faceNormals () const |
Return face normals for patch. More... | |
const Field< PointType > & | pointNormals () const |
Return point normals for patch. More... | |
template<class ToPatch > | |
List< objectHit > | projectPoints (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm alg=intersection::FULL_RAY, const intersection::direction dir=intersection::VECTOR) const |
Project vertices of patch onto another patch. More... | |
template<class ToPatch > | |
List< objectHit > | projectFaceCentres (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm alg=intersection::FULL_RAY, const intersection::direction dir=intersection::VECTOR) const |
Project vertices of patch onto another patch. More... | |
const labelListList & | edgeLoops () const |
Return list of closed loops of boundary vertices. More... | |
surfaceTopo | surfaceType () const |
Calculate surface type formed by patch. More... | |
bool | checkTopology (const bool report=false, labelHashSet *setPtr=NULL) const |
Check surface formed by patch for manifoldness (see above). More... | |
bool | checkPointManifold (const bool report=false, labelHashSet *setPtr=NULL) const |
Checks primitivePatch for faces sharing point but not edge. More... | |
void | writeVTK (const fileName &name) const |
Write VTK patch. More... | |
void | writeVTKNormals (const fileName &name) const |
Write VTK patch normals. More... | |
virtual void | movePoints (const Field< PointType > &) |
Correct patch after moving points. More... | |
void | operator= (const PrimitivePatch< Face, FaceList, PointField, PointType > &) |
Assignment. More... | |
PrimitivePatch (const FaceList< Face > &faces, const Field< PointType > &points) | |
Construct from components. More... | |
PrimitivePatch (const Xfer< FaceList< Face > > &faces, const Xfer< List< PointType > > &points) | |
Construct from components. More... | |
PrimitivePatch (FaceList< Face > &faces, Field< PointType > &points, const bool reUse) | |
Construct from components, reuse storage. More... | |
PrimitivePatch (const PrimitivePatch< Face, FaceList, PointField, PointType > &) | |
Construct as copy. More... | |
virtual | ~PrimitivePatch () |
Destructor. More... | |
void | clearOut () |
void | clearGeom () |
void | clearTopology () |
void | clearPatchMeshAddr () |
const Field< PointType > & | points () const |
Return reference to global points. More... | |
label | nPoints () const |
Return number of points supporting patch faces. More... | |
label | nEdges () const |
Return number of edges in patch. More... | |
const edgeList & | edges () const |
Return list of edges, address into LOCAL point list. More... | |
label | nInternalEdges () const |
Number of internal edges. More... | |
bool | isInternalEdge (const label edgeI) const |
Is internal edge? More... | |
const labelList & | boundaryPoints () const |
Return list of boundary points,. More... | |
const labelListList & | faceFaces () const |
Return face-face addressing. More... | |
const labelListList & | edgeFaces () const |
Return edge-face addressing. More... | |
const labelListList & | faceEdges () const |
Return face-edge addressing. More... | |
const labelListList & | pointEdges () const |
Return point-edge addressing. More... | |
const labelListList & | pointFaces () const |
Return point-face addressing. More... | |
const List< Face > & | localFaces () const |
Return patch faces addressing into local point list. More... | |
const labelList & | meshPoints () const |
Return labelList of mesh points in patch. They are constructed. More... | |
const Map< label > & | meshPointMap () const |
Mesh point map. Given the global point index find its. More... | |
const Field< PointType > & | localPoints () const |
Return pointField of points in patch. More... | |
const labelList & | localPointOrder () const |
Return orders the local points for most efficient search. More... | |
label | whichPoint (const label gp) const |
Given a global point index, return the local point index. More... | |
label | whichEdge (const edge &) const |
Given an edge in local point labels, return its. More... | |
labelList | meshEdges (const edgeList &allEdges, const labelListList &cellEdges, const labelList &faceCells) const |
Return labels of patch edges in the global edge list using. More... | |
labelList | meshEdges (const edgeList &allEdges, const labelListList &pointEdges) const |
Return labels of patch edges in the global edge list using. More... | |
const Field< PointType > & | faceCentres () const |
Return face centres for patch. More... | |
const Field< PointType > & | faceNormals () const |
Return face normals for patch. More... | |
const Field< PointType > & | pointNormals () const |
Return point normals for patch. More... | |
template<class ToPatch > | |
List< objectHit > | projectPoints (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm=intersection::FULL_RAY, const intersection::direction=intersection::VECTOR) const |
Project vertices of patch onto another patch. More... | |
template<class ToPatch > | |
List< objectHit > | projectFaceCentres (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm=intersection::FULL_RAY, const intersection::direction=intersection::VECTOR) const |
Project vertices of patch onto another patch. More... | |
const labelListList & | edgeLoops () const |
Return list of closed loops of boundary vertices. More... | |
surfaceTopo | surfaceType () const |
Calculate surface type formed by patch. More... | |
bool | checkTopology (const bool report=false, labelHashSet *setPtr=NULL) const |
Check surface formed by patch for manifoldness (see above). More... | |
bool | checkPointManifold (const bool report=false, labelHashSet *setPtr=NULL) const |
Checks primitivePatch for faces sharing point but not edge. More... | |
virtual void | movePoints (const Field< PointType > &) |
Correct patch after moving points. More... | |
void | operator= (const PrimitivePatch< Face, FaceList, PointField, PointType > &) |
Assignment. More... | |
template<class ToPatch > | |
Foam::List< Foam::objectHit > | projectPoints (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm alg, const intersection::direction dir) const |
template<class ToPatch > | |
Foam::List< Foam::objectHit > | projectFaceCentres (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm alg, const intersection::direction dir) const |
Static Public Member Functions | |
static scalarField | calcFaceTol (const UList< face > &faces, const pointField &points, const pointField &faceCentres) |
Calculate typical tolerance per face. Is currently max distance. More... | |
![]() | |
static autoPtr< polyPatch > | New (const word &patchType, const word &name, const label size, const label start, const label index, const polyBoundaryMesh &bm) |
Return a pointer to a new patch created on freestore from. More... | |
static autoPtr< polyPatch > | New (const word &name, const dictionary &dict, const label index, const polyBoundaryMesh &bm) |
Return a pointer to a new patch created on freestore from. More... | |
static autoPtr< polyPatch > | New (const word &patchType, const word &name, const dictionary &dict, const label index, const polyBoundaryMesh &bm) |
Return a pointer to a new patch created on freestore from. More... | |
static bool | constraintType (const word &pt) |
Return true if the given type is a constraint type. More... | |
static wordList | constraintTypes () |
Return a list of all the constraint patch types. More... | |
![]() | |
static void | writeVTK (const fileName &name, const FaceListType &faces, const Field< PointType > &points) |
Write generic VTK patch, HJ, 14/Jan/2009. More... | |
static void | writeVTKNormals (const fileName &name, const FaceListType &faces, const Field< PointType > &points) |
Write generic VTK patch normals, HJ, 14/Jan/2009. More... | |
Static Public Attributes | |
static const NamedEnum< transformType, 5 > | transformTypeNames |
![]() | |
static int | disallowGenericPolyPatch |
Debug switch to disallow the use of genericPolyPatch. More... | |
Protected Member Functions | |
void | calcTransformTensors (const vectorField &Cf, const vectorField &Cr, const vectorField &nf, const vectorField &nr, const scalarField &smallDist, const scalar absTol, const transformType=UNKNOWN) const |
Calculate the transformation tensors. More... | |
virtual void | initGeometry (PstreamBuffers &)=0 |
Initialise the calculation of the patch geometry. More... | |
virtual void | calcGeometry (PstreamBuffers &)=0 |
Calculate the patch geometry. More... | |
virtual void | initMovePoints (PstreamBuffers &, const pointField &)=0 |
Initialise the patches for moving points. More... | |
virtual void | movePoints (PstreamBuffers &, const pointField &)=0 |
Correct patches after moving points. More... | |
virtual void | initUpdateMesh (PstreamBuffers &)=0 |
Initialise the update of the patch topology. More... | |
virtual void | updateMesh (PstreamBuffers &)=0 |
Update of the patch topology. More... | |
![]() | |
virtual void | clearGeom () |
Clear geometry. More... | |
virtual void | movePoints (const Field< PointType > &) |
Inherit movePoints from primitivePatch. More... | |
virtual void | movePoints (const Field< PointType > &) |
Inherit movePoints from primitivePatch. More... | |
Static Protected Member Functions | |
static void | writeOBJ (Ostream &os, const point &pt) |
Write point in OBJ format. More... | |
static void | writeOBJ (Ostream &, const pointField &, const labelList &) |
Write selected points in OBJ format. More... | |
static void | writeOBJ (const fileName &, const UList< face > &, const pointField &) |
Write patch. More... | |
static void | writeOBJ (Ostream &os, const point &p0, const point &p1, label &vertI) |
Write edge in OBJ format. More... | |
static pointField | getAnchorPoints (const UList< face > &, const pointField &, const transformType) |
Get a unique anchor point for all faces. More... | |
static label | getRotation (const pointField &points, const face &f, const point &anchor, const scalar tol) |
Get the number of vertices face f needs to be rotated such that. More... | |
Private Attributes | |
const scalar | matchTolerance_ |
Local matching tolerance. More... | |
transformType | transform_ |
Type of transformation. More... | |
vectorField | separation_ |
Offset (distance) vector from one side of the couple to the other. More... | |
tensorField | forwardT_ |
Face transformation tensor. More... | |
tensorField | reverseT_ |
Neighbour-cell transformation tensor. More... | |
boolList | collocated_ |
Are faces collocated. Either size 0,1 or length of patch. More... | |
Static Private Attributes | |
static const scalar | defaultMatchTol_ = 1e-4 |
Default matching tolerance. More... | |
The coupledPolyPatch is an abstract base class for patches that couple regions of the computational domain e.g. cyclic and processor-processor links.
Definition at line 51 of file coupledPolyPatch.H.
enum transformType |
Enumerator | |
---|---|
UNKNOWN | |
ROTATIONAL | |
TRANSLATIONAL | |
COINCIDENTFULLMATCH | |
NOORDERING |
Definition at line 57 of file coupledPolyPatch.H.
coupledPolyPatch | ( | const word & | name, |
const label | size, | ||
const label | start, | ||
const label | index, | ||
const polyBoundaryMesh & | bm, | ||
const word & | patchType, | ||
const transformType | transform | ||
) |
Construct from components.
Definition at line 474 of file coupledPolyPatch.C.
coupledPolyPatch | ( | const word & | name, |
const dictionary & | dict, | ||
const label | index, | ||
const polyBoundaryMesh & | bm, | ||
const word & | patchType | ||
) |
Construct from dictionary.
Definition at line 491 of file coupledPolyPatch.C.
coupledPolyPatch | ( | const coupledPolyPatch & | pp, |
const polyBoundaryMesh & | bm | ||
) |
Construct as copy, resetting the boundary mesh.
Definition at line 511 of file coupledPolyPatch.C.
coupledPolyPatch | ( | const coupledPolyPatch & | pp, |
const polyBoundaryMesh & | bm, | ||
const label | index, | ||
const label | newSize, | ||
const label | newStart | ||
) |
Construct given the original patch and resetting the.
face list and boundary mesh information
Definition at line 523 of file coupledPolyPatch.C.
coupledPolyPatch | ( | const coupledPolyPatch & | pp, |
const polyBoundaryMesh & | bm, | ||
const label | index, | ||
const labelUList & | mapAddressing, | ||
const label | newStart | ||
) |
Construct given the original patch and a map.
Definition at line 538 of file coupledPolyPatch.C.
|
virtual |
Destructor.
Definition at line 554 of file coupledPolyPatch.C.
|
protected |
Calculate the transformation tensors.
smallDist : matching distance per face absTol : absolute error in normal if transformType = unknown it first tries rotational, then translational transform
Definition at line 293 of file coupledPolyPatch.C.
References Foam::endl(), forAll, Foam::mag(), Foam::magSqr(), Foam::max(), Foam::min(), Foam::name(), Foam::nl, Foam::Pout, Foam::rotationTensor(), Foam::sqr(), Foam::sqrt(), Foam::sum(), and Foam::transform().
|
protectedpure virtual |
Initialise the calculation of the patch geometry.
Reimplemented from polyPatch.
Implemented in oldCyclicPolyPatch, cyclicPolyPatch, cyclicAMIPolyPatch, cyclicACMIPolyPatch, processorPolyPatch, and processorCyclicPolyPatch.
|
protectedpure virtual |
Calculate the patch geometry.
Reimplemented from polyPatch.
Implemented in cyclicPolyPatch, oldCyclicPolyPatch, cyclicAMIPolyPatch, cyclicACMIPolyPatch, processorPolyPatch, and processorCyclicPolyPatch.
Referenced by processorCyclicPolyPatch::calcGeometry().
|
protectedpure virtual |
Initialise the patches for moving points.
Reimplemented from polyPatch.
Implemented in cyclicAMIPolyPatch, cyclicACMIPolyPatch, cyclicPolyPatch, oldCyclicPolyPatch, processorPolyPatch, and processorCyclicPolyPatch.
|
protectedpure virtual |
Correct patches after moving points.
Reimplemented from polyPatch.
Implemented in cyclicAMIPolyPatch, cyclicACMIPolyPatch, cyclicPolyPatch, oldCyclicPolyPatch, processorPolyPatch, and processorCyclicPolyPatch.
|
protectedpure virtual |
Initialise the update of the patch topology.
Reimplemented from polyPatch.
Implemented in cyclicPolyPatch, oldCyclicPolyPatch, cyclicAMIPolyPatch, processorPolyPatch, cyclicACMIPolyPatch, and processorCyclicPolyPatch.
|
protectedpure virtual |
Update of the patch topology.
Reimplemented from polyPatch.
Implemented in cyclicPolyPatch, oldCyclicPolyPatch, cyclicAMIPolyPatch, processorPolyPatch, cyclicACMIPolyPatch, and processorCyclicPolyPatch.
Write point in OBJ format.
Definition at line 56 of file coupledPolyPatch.C.
References Foam::endl(), Vector< Cmpt >::x(), Vector< Cmpt >::y(), and Vector< Cmpt >::z().
|
staticprotected |
Write selected points in OBJ format.
Definition at line 63 of file coupledPolyPatch.C.
References forAll, pointLabels(), points, and writeOBJ().
|
staticprotected |
Write patch.
Definition at line 95 of file coupledPolyPatch.C.
References f(), forAll, Foam::nl, points, UList::size(), and writeOBJ().
Write edge in OBJ format.
Definition at line 77 of file coupledPolyPatch.C.
References Foam::nl, and writeOBJ().
|
staticprotected |
Get a unique anchor point for all faces.
Definition at line 131 of file coupledPolyPatch.C.
References f(), forAll, points, List::size(), UList::size(), and Foam::transform().
|
staticprotected |
Get the number of vertices face f needs to be rotated such that.
its f[0] point aligns with given anchor (within tol).
Definition at line 239 of file coupledPolyPatch.C.
References Foam::endl(), f(), forAll, Foam::magSqr(), Foam::nl, points, List::size(), Foam::sqrt(), and WarningInFunction.
TypeName | ( | "coupled" | ) |
Runtime type information.
|
inlinevirtual |
Return true because this patch is coupled.
Reimplemented from polyPatch.
Reimplemented in cyclicAMIPolyPatch, and processorPolyPatch.
Definition at line 241 of file coupledPolyPatch.H.
Referenced by coupledFvPatch::coupled().
|
pure virtual |
Does this side own the patch ?
Implemented in cyclicPolyPatch, processorCyclicPolyPatch, cyclicAMIPolyPatch, processorPolyPatch, and oldCyclicPolyPatch.
Referenced by Foam::checkCoupledPoints(), polyMeshTetDecomposition::findFaceBasePts(), syncTools::getMasterFaces(), coupledPolyPatch::neighbour(), and processorCyclicPolyPatch::owner().
|
inlinevirtual |
Does the coupled side own the patch ?
Reimplemented in cyclicPolyPatch, and processorPolyPatch.
Definition at line 250 of file coupledPolyPatch.H.
References coupledPolyPatch::owner().
|
inlinevirtual |
Type of transform.
Reimplemented in processorCyclicPolyPatch.
Definition at line 256 of file coupledPolyPatch.H.
References coupledPolyPatch::transform_.
Referenced by fvMeshDistribute::addProcPatches(), main(), processorCyclicPolyPatch::transform(), and domainDecomposition::writeDecomposition().
|
inlinevirtual |
Type of transform.
This is currently only for use when collapsing generated meshes that can have zero area faces.
Reimplemented in processorCyclicPolyPatch.
Definition at line 264 of file coupledPolyPatch.H.
|
pure virtual |
Transform a patch-based position from other side to this side.
Implemented in cyclicPolyPatch, processorCyclicPolyPatch, processorPolyPatch, oldCyclicPolyPatch, and cyclicAMIPolyPatch.
Referenced by particle< Type >::correctAfterParallelTransfer(), transformPositionList::operator()(), mapDistribute::transformPosition::operator()(), cyclicPeriodicAMIPolyPatch::resetAMI(), and processorCyclicPolyPatch::transformPosition().
Transform a patch-based position from other side to this side.
Implemented in cyclicAMIPolyPatch, processorCyclicPolyPatch, cyclicPolyPatch, processorPolyPatch, and oldCyclicPolyPatch.
|
inlinevirtual |
Are the planes separated.
Reimplemented in processorCyclicPolyPatch.
Definition at line 276 of file coupledPolyPatch.H.
References coupledPolyPatch::separation_.
Referenced by isoSurface::collocatedPatch(), particle< Type >::correctAfterParallelTransfer(), globalIndexAndTransform::determinePatchTransformSign(), globalIndexAndTransform::determineTransforms(), extendedCellToCellStencil::extendedCellToCellStencil(), extendedCellToFaceStencil::extendedCellToFaceStencil(), extendedFaceToCellStencil::extendedFaceToCellStencil(), FaceCellWave< Type, int >::handleAMICyclicPatches(), particle< Type >::hitCyclicAMIPatch(), particle< Type >::hitCyclicPatch(), main(), motionSmootherAlgo::scaleMesh(), meshRefinement::selectSeparatedCoupledFaces(), processorCyclicPolyPatch::separated(), and syncPoints().
|
inlinevirtual |
If the planes are separated the separation vector.
Reimplemented in processorCyclicPolyPatch.
Definition at line 282 of file coupledPolyPatch.H.
References coupledPolyPatch::separation_.
Referenced by cyclicAMIPolyPatch::calcTransforms(), particle< Type >::correctAfterParallelTransfer(), globalIndexAndTransform::determinePatchTransformSign(), globalIndexAndTransform::determineTransforms(), particle< Type >::hitCyclicAMIPatch(), particle< Type >::hitCyclicPatch(), main(), processorCyclicPolyPatch::separation(), syncPoints(), and cyclicPeriodicAMIPolyPatch::syncTransforms().
|
inlinevirtual |
Are the cyclic planes parallel.
Reimplemented in processorCyclicPolyPatch.
Definition at line 288 of file coupledPolyPatch.H.
References coupledPolyPatch::forwardT_.
Referenced by isoSurface::collocatedPatch(), particle< Type >::correctAfterParallelTransfer(), globalIndexAndTransform::determinePatchTransformSign(), globalIndexAndTransform::determineTransforms(), processorPointPatchField< Type >::doTransform(), processorCyclicPointPatchField< Type >::doTransform(), extendedCellToCellStencil::extendedCellToCellStencil(), extendedCellToFaceStencil::extendedCellToFaceStencil(), extendedFaceToCellStencil::extendedFaceToCellStencil(), FaceCellWave< Type, int >::handleAMICyclicPatches(), PointEdgeWave< Type, TrackingData >::handleCyclicPatches(), FaceCellWave< Type, int >::handleCyclicPatches(), PointEdgeWave< Type, TrackingData >::handleProcPatches(), FaceCellWave< Type, int >::handleProcPatches(), particle< Type >::hitCyclicAMIPatch(), particle< Type >::hitCyclicPatch(), main(), mapDistribute::transform::operator()(), cyclicFvPatch::parallel(), processorFvPatch::parallel(), cyclicAMIFvPatch::parallel(), cyclicAMIPointPatch::parallel(), cyclicPointPatch::parallel(), cyclicACMIPointPatch::parallel(), cyclicACMIFvPatch::parallel(), processorCyclicPolyPatch::parallel(), motionSmootherAlgo::scaleMesh(), meshRefinement::selectSeparatedCoupledFaces(), syncPoints(), and cyclicPeriodicAMIPolyPatch::syncTransforms().
|
inlinevirtual |
Return face transformation tensor.
Reimplemented in processorCyclicPolyPatch.
Definition at line 294 of file coupledPolyPatch.H.
References coupledPolyPatch::forwardT_.
Referenced by cyclicAMIPolyPatch::calcTransforms(), particle< Type >::correctAfterParallelTransfer(), cyclicFvPatch::forwardT(), processorFvPatch::forwardT(), cyclicAMIFvPatch::forwardT(), cyclicAMIPointPatch::forwardT(), cyclicPointPatch::forwardT(), cyclicACMIPointPatch::forwardT(), cyclicACMIFvPatch::forwardT(), processorCyclicPolyPatch::forwardT(), FaceCellWave< Type, int >::handleAMICyclicPatches(), PointEdgeWave< Type, TrackingData >::handleCyclicPatches(), FaceCellWave< Type, int >::handleCyclicPatches(), PointEdgeWave< Type, TrackingData >::handleProcPatches(), FaceCellWave< Type, int >::handleProcPatches(), particle< Type >::hitCyclicAMIPatch(), particle< Type >::hitCyclicPatch(), main(), mapDistribute::transform::operator()(), motionSmootherAlgo::scaleMesh(), syncPoints(), and cyclicPeriodicAMIPolyPatch::syncTransforms().
|
inlinevirtual |
Return neighbour-cell transformation tensor.
Reimplemented in processorCyclicPolyPatch.
Definition at line 300 of file coupledPolyPatch.H.
References coupledPolyPatch::reverseT_.
Referenced by cyclicAMIPolyPatch::calcTransforms(), globalIndexAndTransform::determinePatchTransformSign(), globalIndexAndTransform::determineTransforms(), main(), cyclicFvPatch::reverseT(), processorFvPatch::reverseT(), cyclicAMIFvPatch::reverseT(), cyclicAMIPointPatch::reverseT(), cyclicPointPatch::reverseT(), cyclicACMIPointPatch::reverseT(), cyclicACMIFvPatch::reverseT(), processorCyclicPolyPatch::reverseT(), syncPoints(), and cyclicPeriodicAMIPolyPatch::syncTransforms().
|
inlinevirtual |
Are faces collocated. Either size 0,1 or length of patch.
Reimplemented in processorCyclicPolyPatch.
Definition at line 306 of file coupledPolyPatch.H.
References coupledPolyPatch::collocated_.
Referenced by cyclicAMIPolyPatch::calcTransforms(), processorCyclicPolyPatch::collocated(), and cyclicPeriodicAMIPolyPatch::syncTransforms().
|
inline |
Definition at line 311 of file coupledPolyPatch.H.
References coupledPolyPatch::matchTolerance_.
Referenced by globalIndexAndTransform::determinePatchTransformSign(), and globalIndexAndTransform::determineTransforms().
|
pure virtual |
Calculate the patch geometry.
Implemented in cyclicAMIPolyPatch, cyclicACMIPolyPatch, oldCyclicPolyPatch, cyclicPolyPatch, processorPolyPatch, and processorCyclicPolyPatch.
|
pure virtual |
Initialize ordering for primitivePatch. Does not.
refer to *this (except for name() and type() etc.)
Reimplemented from polyPatch.
Implemented in cyclicPolyPatch, cyclicAMIPolyPatch, processorCyclicPolyPatch, cyclicACMIPolyPatch, processorPolyPatch, and oldCyclicPolyPatch.
|
pure virtual |
Return new ordering for primitivePatch.
Ordering is -faceMap: for every face index of the new face -rotation:for every new face the clockwise shift of the original face. Return false if nothing changes (faceMap is identity, rotation is 0), true otherwise.
Reimplemented from polyPatch.
Implemented in cyclicAMIPolyPatch, cyclicPolyPatch, processorCyclicPolyPatch, processorPolyPatch, cyclicACMIPolyPatch, and oldCyclicPolyPatch.
|
static |
Calculate typical tolerance per face. Is currently max distance.
from face centre to any of the face vertices.
Definition at line 199 of file coupledPolyPatch.C.
References Foam::cmptMag(), Foam::cmptMax(), f(), forAll, Foam::magSqr(), Foam::max(), points, UList::size(), and Foam::sqrt().
Referenced by Foam::checkCoupledPoints().
|
virtual |
Write the polyPatch data as a dictionary.
Reimplemented from polyPatch.
Reimplemented in cyclicAMIPolyPatch, cyclicPolyPatch, processorCyclicPolyPatch, processorPolyPatch, cyclicACMIPolyPatch, oldCyclicPolyPatch, and cyclicPeriodicAMIPolyPatch.
Definition at line 560 of file coupledPolyPatch.C.
References token::END_STATEMENT, Foam::nl, polyPatch::write(), and Ostream::writeKeyword().
Referenced by processorPolyPatch::write(), cyclicPolyPatch::write(), and cyclicAMIPolyPatch::write().
|
static |
Definition at line 67 of file coupledPolyPatch.H.
|
staticprivate |
Default matching tolerance.
Definition at line 75 of file coupledPolyPatch.H.
|
private |
Local matching tolerance.
Definition at line 78 of file coupledPolyPatch.H.
Referenced by coupledPolyPatch::matchTolerance().
|
private |
Type of transformation.
Definition at line 81 of file coupledPolyPatch.H.
Referenced by coupledPolyPatch::transform().
|
mutableprivate |
Offset (distance) vector from one side of the couple to the other.
Definition at line 84 of file coupledPolyPatch.H.
Referenced by coupledPolyPatch::separated(), and coupledPolyPatch::separation().
|
mutableprivate |
Face transformation tensor.
Definition at line 87 of file coupledPolyPatch.H.
Referenced by coupledPolyPatch::forwardT(), and coupledPolyPatch::parallel().
|
mutableprivate |
Neighbour-cell transformation tensor.
Definition at line 90 of file coupledPolyPatch.H.
Referenced by coupledPolyPatch::reverseT().
|
mutableprivate |
Are faces collocated. Either size 0,1 or length of patch.
Definition at line 93 of file coupledPolyPatch.H.
Referenced by coupledPolyPatch::collocated().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.