FreeFOAM The Cross-Platform CFD Toolkit
Hosted by SourceForge:
Get FreeFOAM at SourceForge.net.
            Fast, secure and Free Open Source software downloads

removePoints Class Reference

Removes selected points from mesh and updates faces using these points. More...

#include <dynamicMesh/removePoints.H>


Detailed Description

Removes selected points from mesh and updates faces using these points.

Source files

Definition at line 59 of file removePoints.H.

Collaboration diagram for removePoints:

List of all members.

Classes

class  faceEqOp
 Combine-reduce operator to combine data on faces. Takes care.

Public Member Functions

 ClassName ("removePoints")
 Runtime type information.
 removePoints (const polyMesh &mesh, const bool undoable=false)
 Construct from mesh.
const labelList &  savedFaceLabels () const
 If undoable: affected face labels. Already restored faces.
label  countPointUsage (const scalar minCos, boolList &pointCanBeDeleted) const
 Mark in pointCanBeDeleted the points that can be deleted.
void  setRefinement (const boolList &, polyTopoChange &)
 Play commands into polyTopoChange to remove points. Gets.
void  updateMesh (const mapPolyMesh &)
 Force recalculation of locally stored data on topological change.
void  getUnrefimentSet (const labelList &undoFaces, labelList &localFaces, labelList &localPoints) const
 Given set of faces to restore calculates a consistent set of.
void  setUnrefinement (const labelList &localFaces, const labelList &localPoints, polyTopoChange &)
 Restore selected faces and vertices.

Constructor & Destructor Documentation

removePoints ( const polyMesh &   mesh,
const bool   undoable = false  
)

Construct from mesh.

Definition at line 104 of file removePoints.C.


Member Function Documentation

ClassName ( "removePoints"    )

Runtime type information.

const labelList& savedFaceLabels (  ) const [inline]

If undoable: affected face labels. Already restored faces.

will be -1.

Definition at line 147 of file removePoints.H.

Foam::label countPointUsage ( const scalar   minCos,
boolList &   pointCanBeDeleted  
) const

Mark in pointCanBeDeleted the points that can be deleted.

(parallel synchronised) and returns the global number of these points. (this number is the global number before synchronisation so might be off!) A point can be deleted if

  • it is not used by any edge. or
  • is not used by an internal edge
  • is used by only two boundary edges. (note that these two edges will always be boundary ones!)
  • these two edges are sufficiently in line (cos > minCos)
  • all processors agree that point can be deleted.

Definition at line 117 of file removePoints.C.

References List< T >::clear(), edge::commonVertex(), e, f(), forAll, Foam::mag(), edge::otherVertex(), points, Foam::returnReduce(), List< T >::setSize(), List< T >::size(), and syncTools::syncPointList().

Referenced by meshRefinement::mergeEdges().

void setRefinement ( const boolList &   pointCanBeDeleted,
polyTopoChange &   meshMod  
)

Play commands into polyTopoChange to remove points. Gets.

boolList (output of countPointUsage) as input. Does no check for whether resulting face is legal. Since pointCanBeDeleted is synced all coupled faces should decide the same.

Definition at line 260 of file removePoints.C.

References Foam::abort(), f(), Foam::FatalError, FatalErrorIn, forAll, forAllConstIter, HashSet< Key, Hash >::insert(), HashTable< T, Key, Hash >::insert(), Foam::nl, pFaces, HashTable< T, Key, Hash >::resize(), polyTopoChange::setAction(), List< T >::setSize(), List< T >::size(), and HashTable< T, Key, Hash >::size().

Referenced by meshRefinement::mergeEdges().

void updateMesh ( const mapPolyMesh &   map  )

Force recalculation of locally stored data on topological change.

Definition at line 420 of file removePoints.C.

References Foam::abort(), f(), Foam::FatalError, FatalErrorIn, forAll, Foam::nl, mapPolyMesh::reverseFaceMap(), mapPolyMesh::reversePointMap(), List< T >::setSize(), and List< T >::size().

Referenced by meshRefinement::mergeEdges().

void getUnrefimentSet ( const labelList &   undoFaces,
labelList &   localFaces,
labelList &   localPoints  
) const

Given set of faces to restore calculates a consistent set of.

saved faces (indices into savedFaces_) and saved vertices (indices into savedPoints_) to restore. The undoFaces have to be synced.

Definition at line 526 of file removePoints.C.

References Foam::abort(), Foam::endl(), Foam::FatalError, FatalErrorIn, forAll, HashTable< T, Key, Hash >::found(), wallPoint::greatPoint, List< T >::setSize(), List< T >::size(), HashTable< T, Key, Hash >::size(), faceSet::sync(), and syncTools::syncBoundaryFaceList().

void setUnrefinement ( const labelList &   localFaces,
const labelList &   localPoints,
polyTopoChange &   meshMod  
)

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