gmsh-TingyuanDoc  0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
meshPartition.cpp File Reference
#include <vector>
#include <set>
#include <sstream>
#include <algorithm>
#include <ctime>
#include <limits>
#include <stack>
#include <cstdlib>
#include <map>
#include <unordered_map>
#include "GmshConfig.h"
#include "GmshMessage.h"
#include "GModel.h"
#include "ElementType.h"
Include dependency graph for meshPartition.cpp:

Go to the source code of this file.

Classes

struct  OriGEntityPtrFullLessThan
 

Macros

#define hashmap   std::unordered_map
 
#define hashmapentity
 
#define hashmapelement   std::unordered_map<MElement *, GEntity *, MElementPtrHash, MElementPtrEqual>
 
#define hashmapelementpart   std::unordered_map<MElement *, int, MElementPtrHash, MElementPtrEqual>
 
#define hashmapface
 
#define hashmapedge
 
#define hashmapvertex
 

Typedefs

typedef std::set< std::pair< int, GEntity * >, OriGEntityPtrFullLessThansetorientity
 

Functions

int PartitionMesh (GModel *model, int numPart)
 
int UnpartitionMesh (GModel *model)
 
int ConvertOldPartitioningToNewOne (GModel *model)
 
int PartitionUsingThisSplit (GModel *model, std::vector< std::pair< MElement *, int > > &elmToPartition)
 
int PartitionFaceMinEdgeLength (GFace *gf, int np, double tol)
 

Macro Definition Documentation

◆ hashmap

#define hashmap   std::unordered_map

Definition at line 38 of file meshPartition.cpp.

◆ hashmapedge

#define hashmapedge
Value:
std::vector<std::pair<MElement *, std::vector<int> > >, \
MEdgeHash, MEdgeEqual>

Definition at line 50 of file meshPartition.cpp.

◆ hashmapelement

#define hashmapelement   std::unordered_map<MElement *, GEntity *, MElementPtrHash, MElementPtrEqual>

Definition at line 42 of file meshPartition.cpp.

◆ hashmapelementpart

#define hashmapelementpart   std::unordered_map<MElement *, int, MElementPtrHash, MElementPtrEqual>

Definition at line 44 of file meshPartition.cpp.

◆ hashmapentity

#define hashmapentity
Value:

Definition at line 39 of file meshPartition.cpp.

◆ hashmapface

#define hashmapface
Value:
std::vector<std::pair<MElement *, std::vector<int> > >, \
MFaceHash, MFaceEqual>

Definition at line 46 of file meshPartition.cpp.

◆ hashmapvertex

#define hashmapvertex
Value:
std::vector<std::pair<MElement *, std::vector<int> > >, \
MVertexPtrHash, MVertexPtrEqual>

Definition at line 54 of file meshPartition.cpp.

Typedef Documentation

◆ setorientity

typedef std::set<std::pair<int, GEntity *>, OriGEntityPtrFullLessThan> setorientity

Definition at line 35 of file meshPartition.cpp.

Function Documentation

◆ ConvertOldPartitioningToNewOne()

int ConvertOldPartitioningToNewOne ( GModel model)

Definition at line 2654 of file meshPartition.cpp.

Referenced by GModel::convertOldPartitioningToNewOne().

Here is the caller graph for this function:

◆ PartitionFaceMinEdgeLength()

int PartitionFaceMinEdgeLength ( GFace gf,
int  np,
double  tol 
)

Definition at line 2663 of file meshPartition.cpp.

Referenced by computeEdgeCut().

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

◆ PartitionMesh()

int PartitionMesh ( GModel model,
int  numPart 
)

Definition at line 2646 of file meshPartition.cpp.

Referenced by GModel::partitionMesh().

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

◆ PartitionUsingThisSplit()

int PartitionUsingThisSplit ( GModel model,
std::vector< std::pair< MElement *, int > > &  elmToPartition 
)

Definition at line 2656 of file meshPartition.cpp.

Referenced by GModel::partitionMesh(), and GMSH_SimplePartitionPlugin::run().

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

◆ UnpartitionMesh()

int UnpartitionMesh ( GModel model)

Definition at line 2652 of file meshPartition.cpp.

Referenced by GModel::partitionMesh(), and GModel::unpartitionMesh().

Here is the caller graph for this function:
MEdge
Definition: MEdge.h:14
MFaceEqual
Definition: MFace.h:126
MVertex
Definition: MVertex.h:24
GEntity
Definition: GEntity.h:31
MFace
Definition: MFace.h:20
robin_hood::unordered_map
detail::Table< sizeof(robin_hood::pair< Key, T >)<=sizeof(size_t) *6 &&std::is_nothrow_move_constructible< robin_hood::pair< Key, T > >::value &&std::is_nothrow_move_assignable< robin_hood::pair< Key, T > >::value, MaxLoadFactor100, Key, T, Hash, KeyEqual > unordered_map
Definition: robin_hood.h:2509
setorientity
std::set< std::pair< int, GEntity * >, OriGEntityPtrFullLessThan > setorientity
Definition: meshPartition.cpp:35
MVertexPtrEqual
Definition: MVertex.h:225
MEdgeEqual
Definition: MEdge.h:118
GEntityPtrFullHash
Definition: GEntity.h:443