gmsh-TingyuanDoc
0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
|
#include "meshGRegionLocalMeshMod.h"
#include "GEntity.h"
#include "GRegion.h"
#include "GmshMessage.h"
#include "Numeric.h"
#include "MHexahedron.h"
#include "MPrism.h"
#include "MPyramid.h"
Go to the source code of this file.
Classes | |
struct | SwapPattern |
struct | smoothVertexData3D |
Functions | |
void | computeNeighboringTetsOfACavity (const std::vector< MTet4 * > &cavity, std::vector< MTet4 * > &outside) |
bool | buildEdgeCavity (MTet4 *t, int iLocalEdge, MVertex **v1, MVertex **v2, std::vector< MTet4 * > &cavity, std::vector< MTet4 * > &outside, std::vector< MVertex * > &ring) |
void | BuildSwapPattern3 (SwapPattern *sc) |
void | BuildSwapPattern4 (SwapPattern *sc) |
void | BuildSwapPattern5 (SwapPattern *sc) |
void | BuildSwapPattern6 (SwapPattern *sc) |
void | BuildSwapPattern7 (SwapPattern *sc) |
bool | edgeSwap (std::vector< MTet4 * > &newTets, MTet4 *tet, int iLocalEdge, const qmTetrahedron::Measures &cr, const std::set< MFace, MFaceLessThan > &embeddedFaces) |
bool | edgeSplit (std::vector< MTet4 * > &newTets, MTet4 *tet, MVertex *newVertex, int iLocalEdge, const qmTetrahedron::Measures &cr) |
bool | faceSwap (std::vector< MTet4 * > &newTets, MTet4 *t1, int iLocalFace, const qmTetrahedron::Measures &cr, const std::set< MFace, MFaceLessThan > &embeddedFaces) |
bool | buildVertexCavity_recur (MTet4 *t, MVertex *v, std::vector< MTet4 * > &cavity) |
bool | collapseVertex (std::vector< MTet4 * > &newTets, MTet4 *t, int iVertex, int iTarget, const qmTetrahedron::Measures &cr, const localMeshModAction action, double *minQual) |
bool | smoothVertex (MTet4 *t, int iVertex, const qmTetrahedron::Measures &cr) |
double | smoothing_objective_function_3D (double X, double Y, double Z, MVertex *v, std::vector< MTet4 * > &ts) |
void | deriv_smoothing_objective_function_3D (double *XYZ, double *dF, double &F, void *data) |
double | smooth_obj_3D (double *XYZ, void *data) |
bool | smoothVertexOptimize (MTet4 *t, int iVertex, const qmTetrahedron::Measures &cr) |
template<class ITERATOR > | |
void | fillv_ (std::multimap< MVertex *, MElement * > &vertexToElement, ITERATOR it_beg, ITERATOR it_end) |
int | LaplaceSmoothing (GRegion *gr) |
Variables | |
static int | edges [6][2] = {{0, 1}, {0, 2}, {0, 3}, {1, 2}, {1, 3}, {2, 3}} |
static int | efaces [6][2] = {{0, 2}, {0, 1}, {1, 2}, {0, 3}, {2, 3}, {1, 3}} |
static int | faces [4][3] = {{0, 1, 2}, {0, 2, 3}, {0, 1, 3}, {1, 2, 3}} |
static int | vnofaces [4] = {3, 1, 2, 0} |
static int | vFac [4][3] = {{0, 1, 2}, {0, 2, 3}, {0, 1, 3}, {1, 2, 3}} |
bool buildEdgeCavity | ( | MTet4 * | t, |
int | iLocalEdge, | ||
MVertex ** | v1, | ||
MVertex ** | v2, | ||
std::vector< MTet4 * > & | cavity, | ||
std::vector< MTet4 * > & | outside, | ||
std::vector< MVertex * > & | ring | ||
) |
Definition at line 61 of file meshGRegionLocalMeshMod.cpp.
Referenced by edgeSplit(), and edgeSwap().
void BuildSwapPattern3 | ( | SwapPattern * | sc | ) |
Definition at line 132 of file meshGRegionLocalMeshMod.cpp.
Referenced by edgeSwap().
void BuildSwapPattern4 | ( | SwapPattern * | sc | ) |
Definition at line 155 of file meshGRegionLocalMeshMod.cpp.
Referenced by edgeSwap().
void BuildSwapPattern5 | ( | SwapPattern * | sc | ) |
Definition at line 167 of file meshGRegionLocalMeshMod.cpp.
Referenced by edgeSwap().
void BuildSwapPattern6 | ( | SwapPattern * | sc | ) |
Definition at line 185 of file meshGRegionLocalMeshMod.cpp.
Referenced by edgeSwap().
void BuildSwapPattern7 | ( | SwapPattern * | sc | ) |
Definition at line 205 of file meshGRegionLocalMeshMod.cpp.
Referenced by edgeSwap().
Definition at line 485 of file meshGRegionLocalMeshMod.cpp.
Referenced by collapseVertex(), smoothVertex(), and smoothVertexOptimize().
bool collapseVertex | ( | std::vector< MTet4 * > & | newTets, |
MTet4 * | t, | ||
int | iVertex, | ||
int | iTarget, | ||
const qmTetrahedron::Measures & | cr, | ||
const localMeshModAction | action, | ||
double * | minQual | ||
) |
Definition at line 529 of file meshGRegionLocalMeshMod.cpp.
Referenced by adaptMeshGRegion::operator()().
void computeNeighboringTetsOfACavity | ( | const std::vector< MTet4 * > & | cavity, |
std::vector< MTet4 * > & | outside | ||
) |
Definition at line 35 of file meshGRegionLocalMeshMod.cpp.
Referenced by buildEdgeCavity(), and collapseVertex().
void deriv_smoothing_objective_function_3D | ( | double * | XYZ, |
double * | dF, | ||
double & | F, | ||
void * | data | ||
) |
Definition at line 731 of file meshGRegionLocalMeshMod.cpp.
bool edgeSplit | ( | std::vector< MTet4 * > & | newTets, |
MTet4 * | tet, | ||
MVertex * | newVertex, | ||
int | iLocalEdge, | ||
const qmTetrahedron::Measures & | cr | ||
) |
Definition at line 355 of file meshGRegionLocalMeshMod.cpp.
bool edgeSwap | ( | std::vector< MTet4 * > & | newTets, |
MTet4 * | tet, | ||
int | iLocalEdge, | ||
const qmTetrahedron::Measures & | cr, | ||
const std::set< MFace, MFaceLessThan > & | embeddedFaces | ||
) |
Definition at line 237 of file meshGRegionLocalMeshMod.cpp.
Referenced by adaptMeshGRegion::operator()(), and optimizeMesh().
bool faceSwap | ( | std::vector< MTet4 * > & | newTets, |
MTet4 * | t1, | ||
int | iLocalFace, | ||
const qmTetrahedron::Measures & | cr, | ||
const std::set< MFace, MFaceLessThan > & | embeddedFaces | ||
) |
Definition at line 390 of file meshGRegionLocalMeshMod.cpp.
Referenced by adaptMeshGRegion::operator()().
void fillv_ | ( | std::multimap< MVertex *, MElement * > & | vertexToElement, |
ITERATOR | it_beg, | ||
ITERATOR | it_end | ||
) |
Definition at line 816 of file meshGRegionLocalMeshMod.cpp.
Referenced by LaplaceSmoothing().
int LaplaceSmoothing | ( | GRegion * | gr | ) |
Definition at line 828 of file meshGRegionLocalMeshMod.cpp.
double smooth_obj_3D | ( | double * | XYZ, |
void * | data | ||
) |
Definition at line 750 of file meshGRegionLocalMeshMod.cpp.
double smoothing_objective_function_3D | ( | double | X, |
double | Y, | ||
double | Z, | ||
MVertex * | v, | ||
std::vector< MTet4 * > & | ts | ||
) |
Definition at line 707 of file meshGRegionLocalMeshMod.cpp.
Referenced by deriv_smoothing_objective_function_3D(), and smooth_obj_3D().
bool smoothVertex | ( | MTet4 * | t, |
int | iVertex, | ||
const qmTetrahedron::Measures & | cr | ||
) |
Definition at line 624 of file meshGRegionLocalMeshMod.cpp.
Referenced by insertVerticesInRegion(), adaptMeshGRegion::operator()(), and optimizeMesh().
bool smoothVertexOptimize | ( | MTet4 * | t, |
int | iVertex, | ||
const qmTetrahedron::Measures & | cr | ||
) |
Definition at line 757 of file meshGRegionLocalMeshMod.cpp.
|
static |
Definition at line 23 of file meshGRegionLocalMeshMod.cpp.
Referenced by _eulerCharacteristic(), quadMeshRemoveHalfOfOneDMesh::_restore(), ClosureGen::addEdgeNodes(), addElementsInArrays(), addScalarPolygon(), allEdgesLinked(), allFacesLinked(), blyr_manager::blyr_manager(), buildEdgeCavity(), collapseEdgePass(), computeEdgeLoops(), computeParametrization(), createEdge(), createTopologyFromMesh2D(), deleteEdge(), DuplicateSurface(), edgeExists(), GMSH_MeshSubEntitiesPlugin::execute(), GMSH_BoundaryAnglesPlugin::execute(), ClosureGen::generateFaceClosurePrismFull(), ClosureGen::generateFaceClosureTetFull(), getAdditionalEntities(), GEdgeLoop::getEdges(), getEntitiesToSave(), getMaxLcWhenCollapsingEdge(), getNodeCopies(), GFaceInitialMesh(), GlobalBackgroundMesh::importGModelMeshes(), insertAllVertices(), GeomMeshMatcher::matchEdges(), MeshExtrudedSurface(), meshGenerator(), MeshTransfiniteSurface(), MeshTransfiniteVolume(), modifyInitialMeshForBoundaryLayers(), EmbeddedCompatibilityTest::operator()(), orientAndSortEdges(), phase1(), phase2(), phase3(), quadMeshRemoveHalfOfOneDMesh::quadMeshRemoveHalfOfOneDMesh(), readMSHEntities(), recoverEdges(), recurFindLinkedEdges(), recurFindLinkedFaces(), scriptFillet(), drawContext::select(), skipVertex(), SortEdgesInLoop(), splitEdgePass(), SubdivideExtrudedMesh(), trueBoundary(), backgroundMesh::updateSizes(), writeMSH4Elements(), writeMSH4Entities(), writeMSH4Nodes(), writeMSHEntities(), and writeX3dEdges().
|
static |
Definition at line 24 of file meshGRegionLocalMeshMod.cpp.
Referenced by blyr_manager::blyr_manager(), and buildEdgeCavity().
|
static |
Definition at line 27 of file meshGRegionLocalMeshMod.cpp.
Referenced by buildEdgeCavity(), and faceSwap().
|
static |
Definition at line 29 of file meshGRegionLocalMeshMod.cpp.
Referenced by buildVertexCavity_recur().
|
static |
Definition at line 28 of file meshGRegionLocalMeshMod.cpp.
Referenced by faceSwap().