|
| ParMesh (const ParMesh &pmesh, bool copy_nodes=true) |
|
| ParMesh (MPI_Comm comm, Mesh &mesh, int *partitioning_=NULL, int part_method=1) |
|
MPI_Comm | GetComm () const |
|
int | GetNRanks () const |
|
int | GetMyRank () const |
|
int | GetNGroups () |
|
int | GroupNVertices (int group) |
|
int | GroupNEdges (int group) |
|
int | GroupNFaces (int group) |
|
int | GroupVertex (int group, int i) |
|
void | GroupEdge (int group, int i, int &edge, int &o) |
|
void | GroupFace (int group, int i, int &face, int &o) |
|
void | ExchangeFaceNbrData () |
|
void | ExchangeFaceNbrNodes () |
|
int | GetNFaceNeighbors () const |
|
int | GetFaceNbrGroup (int fn) const |
|
int | GetFaceNbrRank (int fn) const |
|
Table * | GetFaceToAllElementTable () const |
|
FaceElementTransformations * | GetSharedFaceTransformations (int) |
|
int | GetNSharedFaces () const |
| Return the number of shared faces (3D), edges (2D), vertices (1D) More...
|
|
int | GetSharedFace (int sface) const |
| Return the local face index for the given shared face. More...
|
|
virtual void | ReorientTetMesh () |
| See the remarks for the serial version in mesh.hpp. More...
|
|
void | RefineGroups (const DSTable &v_to_v, int *middle) |
| Update the groups after tet refinement. More...
|
|
virtual void | Print (std::ostream &out=std::cout) const |
|
virtual void | PrintXG (std::ostream &out=std::cout) const |
|
void | PrintAsOne (std::ostream &out=std::cout) |
|
void | PrintAsOneXG (std::ostream &out=std::cout) |
| Old mesh format (Netgen/Truegrid) version of 'PrintAsOne'. More...
|
|
virtual void | PrintInfo (std::ostream &out=std::cout) |
| Print various parallel mesh stats. More...
|
|
virtual | ~ParMesh () |
|
| Mesh () |
|
| Mesh (const Mesh &mesh, bool copy_nodes=true) |
|
| Mesh (int _Dim, int NVert, int NElem, int NBdrElem=0, int _spaceDim=-1) |
|
Element * | NewElement (int geom) |
|
void | AddVertex (const double *) |
|
void | AddTri (const int *vi, int attr=1) |
|
void | AddTriangle (const int *vi, int attr=1) |
|
void | AddQuad (const int *vi, int attr=1) |
|
void | AddTet (const int *vi, int attr=1) |
|
void | AddHex (const int *vi, int attr=1) |
|
void | AddHexAsTets (const int *vi, int attr=1) |
|
void | AddElement (Element *elem) |
|
void | AddBdrElement (Element *elem) |
|
void | AddBdrSegment (const int *vi, int attr=1) |
|
void | AddBdrTriangle (const int *vi, int attr=1) |
|
void | AddBdrQuad (const int *vi, int attr=1) |
|
void | AddBdrQuadAsTriangles (const int *vi, int attr=1) |
|
void | GenerateBoundaryElements () |
|
void | FinalizeTriMesh (int generate_edges=0, int refine=0, bool fix_orientation=true) |
|
void | FinalizeQuadMesh (int generate_edges=0, int refine=0, bool fix_orientation=true) |
|
void | FinalizeTetMesh (int generate_edges=0, int refine=0, bool fix_orientation=true) |
|
void | FinalizeHexMesh (int generate_edges=0, int refine=0, bool fix_orientation=true) |
|
void | SetAttributes () |
|
void | GetGeckoElementReordering (Array< int > &ordering) |
|
void | ReorderElements (const Array< int > &ordering, bool reorder_vertices=true) |
|
| Mesh (int nx, int ny, int nz, Element::Type type, int generate_edges=0, double sx=1.0, double sy=1.0, double sz=1.0) |
|
| Mesh (int nx, int ny, Element::Type type, int generate_edges=0, double sx=1.0, double sy=1.0) |
|
| Mesh (int n, double sx=1.0) |
|
| Mesh (std::istream &input, int generate_edges=0, int refine=1, bool fix_orientation=true) |
|
| Mesh (Mesh *mesh_array[], int num_pieces) |
| Create a disjoint mesh from the given mesh array. More...
|
|
void | Load (std::istream &input, int generate_edges=0, int refine=1, bool fix_orientation=true) |
|
int | MeshGenerator () |
| Truegrid or NetGen? More...
|
|
int | GetNV () const |
|
int | GetNE () const |
| Returns number of elements. More...
|
|
int | GetNBE () const |
| Returns number of boundary elements. More...
|
|
int | GetNEdges () const |
| Return the number of edges. More...
|
|
int | GetNFaces () const |
| Return the number of faces in a 3D mesh. More...
|
|
int | GetNumFaces () const |
| Return the number of faces (3D), edges (2D) or vertices (1D). More...
|
|
int | EulerNumber () const |
| Equals 1 + num_holes - num_loops. More...
|
|
int | EulerNumber2D () const |
| Equals 1 - num_holes. More...
|
|
int | Dimension () const |
|
int | SpaceDimension () const |
|
const double * | GetVertex (int i) const |
| Return pointer to vertex i's coordinates. More...
|
|
double * | GetVertex (int i) |
|
const Element * | GetElement (int i) const |
|
Element * | GetElement (int i) |
|
const Element * | GetBdrElement (int i) const |
|
Element * | GetBdrElement (int i) |
|
const Element * | GetFace (int i) const |
|
int | GetFaceBaseGeometry (int i) const |
|
int | GetElementBaseGeometry (int i) const |
|
int | GetBdrElementBaseGeometry (int i) const |
|
void | GetElementVertices (int i, Array< int > &dofs) const |
| Returns the indices of the dofs of element i. More...
|
|
void | GetBdrElementVertices (int i, Array< int > &dofs) const |
| Returns the indices of the dofs of boundary element i. More...
|
|
void | GetElementEdges (int i, Array< int > &edges, Array< int > &cor) const |
| Return the indices and the orientations of all edges of element i. More...
|
|
void | GetBdrElementEdges (int i, Array< int > &edges, Array< int > &cor) const |
| Return the indices and the orientations of all edges of bdr element i. More...
|
|
void | GetFaceEdges (int i, Array< int > &, Array< int > &) const |
|
void | GetFaceVertices (int i, Array< int > &vert) const |
| Returns the indices of the vertices of face i. More...
|
|
void | GetEdgeVertices (int i, Array< int > &vert) const |
| Returns the indices of the vertices of edge i. More...
|
|
Table * | GetFaceEdgeTable () const |
| Returns the face-to-edge Table (3D) More...
|
|
Table * | GetEdgeVertexTable () const |
| Returns the edge-to-vertex Table (3D) More...
|
|
void | GetElementFaces (int i, Array< int > &, Array< int > &) const |
| Return the indices and the orientations of all faces of element i. More...
|
|
void | GetBdrElementFace (int i, int *, int *) const |
| Return the index and the orientation of the face of bdr element i. (3D) More...
|
|
int | GetBdrElementEdgeIndex (int i) const |
|
int | GetElementType (int i) const |
| Returns the type of element i. More...
|
|
int | GetBdrElementType (int i) const |
| Returns the type of boundary element i. More...
|
|
void | GetPointMatrix (int i, DenseMatrix &pointmat) const |
|
void | GetBdrPointMatrix (int i, DenseMatrix &pointmat) const |
|
void | GetElementTransformation (int i, IsoparametricTransformation *ElTr) |
|
ElementTransformation * | GetElementTransformation (int i) |
| Returns the transformation defining the i-th element. More...
|
|
void | GetElementTransformation (int i, const Vector &nodes, IsoparametricTransformation *ElTr) |
|
ElementTransformation * | GetBdrElementTransformation (int i) |
| Returns the transformation defining the i-th boundary element. More...
|
|
void | GetBdrElementTransformation (int i, IsoparametricTransformation *ElTr) |
|
void | GetFaceTransformation (int i, IsoparametricTransformation *FTr) |
|
ElementTransformation * | GetFaceTransformation (int FaceNo) |
| Returns the transformation defining the given face element. More...
|
|
void | GetEdgeTransformation (int i, IsoparametricTransformation *EdTr) |
|
ElementTransformation * | GetEdgeTransformation (int EdgeNo) |
| Returns the transformation defining the given face element. More...
|
|
FaceElementTransformations * | GetFaceElementTransformations (int FaceNo, int mask=31) |
|
FaceElementTransformations * | GetInteriorFaceTransformations (int FaceNo) |
|
FaceElementTransformations * | GetBdrFaceTransformations (int BdrElemNo) |
|
bool | FaceIsInterior (int FaceNo) const |
| Return true if the given face is interior. More...
|
|
void | GetFaceElements (int Face, int *Elem1, int *Elem2) |
|
void | GetFaceInfos (int Face, int *Inf1, int *Inf2) |
|
void | CheckElementOrientation (bool fix_it=true) |
| Check the orientation of the elements. More...
|
|
void | CheckBdrElementOrientation (bool fix_it=true) |
| Check the orientation of the boundary elements. More...
|
|
int | GetAttribute (int i) const |
| Return the attribute of element i. More...
|
|
int | GetBdrAttribute (int i) const |
| Return the attribute of boundary element i. More...
|
|
const Table & | ElementToElementTable () |
|
const Table & | ElementToFaceTable () const |
|
const Table & | ElementToEdgeTable () const |
|
Table * | GetVertexToElementTable () |
| The returned Table must be destroyed by the caller. More...
|
|
Table * | GetFaceToElementTable () const |
|
int * | CartesianPartitioning (int nxyz[]) |
|
int * | GeneratePartitioning (int nparts, int part_method=1) |
|
void | CheckPartitioning (int *partitioning) |
|
void | CheckDisplacements (const Vector &displacements, double &tmax) |
|
void | MoveVertices (const Vector &displacements) |
|
void | GetVertices (Vector &vert_coord) const |
|
void | SetVertices (const Vector &vert_coord) |
|
void | GetNode (int i, double *coord) |
|
void | SetNode (int i, const double *coord) |
|
void | MoveNodes (const Vector &displacements) |
|
void | GetNodes (Vector &node_coord) const |
|
void | SetNodes (const Vector &node_coord) |
|
GridFunction * | GetNodes () |
| Return a pointer to the internal node GridFunction (may be NULL). More...
|
|
void | NewNodes (GridFunction &nodes, bool make_owner=false) |
| Replace the internal node GridFunction with the given GridFunction. More...
|
|
void | SwapNodes (GridFunction *&nodes, int &own_nodes_) |
|
void | GetNodes (GridFunction &nodes) const |
| Return the mesh nodes/vertices projected on the given GridFunction. More...
|
|
void | SetNodalFESpace (FiniteElementSpace *nfes) |
|
void | SetNodalGridFunction (GridFunction *nodes, bool make_owner=false) |
|
const FiniteElementSpace * | GetNodalFESpace () |
|
void | SetCurvature (int order, bool discont=false, int space_dim=-1, int ordering=1) |
|
void | UniformRefinement () |
|
void | GeneralRefinement (const Array< Refinement > &refinements, int nonconforming=-1, int nc_limit=0) |
|
void | GeneralRefinement (const Array< int > &el_to_refine, int nonconforming=-1, int nc_limit=0) |
|
void | EnsureNCMesh () |
|
void | RandomRefinement (int levels, int frac=2, bool aniso=false, int nonconforming=-1, int nc_limit=-1, int seed=0) |
| Refine each element with 1/frac probability, repeat 'levels' times. More...
|
|
void | RefineAtVertex (const Vertex &vert, int levels, double eps=0.0, int nonconforming=-1) |
| Refine elements sharing the specified vertex, 'levels' times. More...
|
|
void | KnotInsert (Array< KnotVector * > &kv) |
|
void | DegreeElevate (int t) |
|
void | UseTwoLevelState (int use) |
|
void | SetState (int s) |
| Change the mesh state to NORMAL, TWO_LEVEL_COARSE, TWO_LEVEL_FINE. More...
|
|
int | GetState () const |
|
int | GetNumFineElems (int i) |
|
int | GetRefinementType (int i) |
| For a given coarse element i returns its refinement type. More...
|
|
int | GetFineElem (int i, int j) |
|
ElementTransformation * | GetFineElemTrans (int i, int j) |
|
void | PrintVTK (std::ostream &out) |
| Print the mesh in VTK format (linear and quadratic meshes only). More...
|
|
void | PrintVTK (std::ostream &out, int ref, int field_data=0) |
|
void | GetElementColoring (Array< int > &colors, int el0=0) |
|
void | PrintWithPartitioning (int *partitioning, std::ostream &out, int elem_attr=0) const |
|
void | PrintElementsWithPartitioning (int *partitioning, std::ostream &out, int interior_faces=0) |
|
void | PrintSurfaces (const Table &Aface_face, std::ostream &out) const |
| Print set of disjoint surfaces: More...
|
|
void | ScaleSubdomains (double sf) |
|
void | ScaleElements (double sf) |
|
void | Transform (void(*f)(const Vector &, Vector &)) |
|
void | Transform (VectorCoefficient &deformation) |
|
void | RemoveUnusedVertices () |
| Remove unused vertices and rebuild mesh connectivity. More...
|
|
void | RemoveInternalBoundaries () |
|
double | GetElementSize (int i, int type=0) |
|
double | GetElementSize (int i, const Vector &dir) |
|
double | GetElementVolume (int i) |
|
void | PrintCharacteristics (Vector *Vh=NULL, Vector *Vk=NULL, std::ostream &out=std::cout) |
|
void | MesquiteSmooth (const int mesquite_option=0) |
|
virtual | ~Mesh () |
| Destroys mesh. More...
|
|
|
enum | { NORMAL,
TWO_LEVEL_COARSE,
TWO_LEVEL_FINE
} |
|
static FiniteElement * | GetTransformationFEforElementType (int) |
|
void | Init () |
|
void | InitTables () |
|
void | DeleteTables () |
|
void | DeleteCoarseTables () |
|
Element * | ReadElementWithoutAttr (std::istream &) |
|
Element * | ReadElement (std::istream &) |
|
void | SetMeshGen () |
|
double | GetLength (int i, int j) const |
| Return the length of the segment from node i to node j. More...
|
|
void | GetElementJacobian (int i, DenseMatrix &J) |
|
void | MarkForRefinement () |
|
void | MarkTriMeshForRefinement () |
|
void | GetEdgeOrdering (DSTable &v_to_v, Array< int > &order) |
|
void | MarkTetMeshForRefinement () |
|
void | PrepareNodeReorder (DSTable **old_v_to_v, Table **old_elem_vert) |
|
void | DoNodeReorder (DSTable *old_v_to_v, Table *old_elem_vert) |
|
STable3D * | GetFacesTable () |
|
STable3D * | GetElementToFaceTable (int ret_ftbl=0) |
|
void | RedRefinement (int i, const DSTable &v_to_v, int *edge1, int *edge2, int *middle) |
|
void | GreenRefinement (int i, const DSTable &v_to_v, int *edge1, int *edge2, int *middle) |
|
void | Bisection (int i, const DSTable &, int *, int *, int *) |
|
void | Bisection (int i, const DSTable &, int *) |
|
void | UniformRefinement (int i, const DSTable &, int *, int *, int *) |
|
void | AverageVertices (int *indexes, int n, int result) |
|
void | UpdateNodes () |
| Update the nodes of a curved mesh after refinement. More...
|
|
void | LoadPatchTopo (std::istream &input, Array< int > &edge_to_knot) |
| Read NURBS patch/macro-element mesh. More...
|
|
void | UpdateNURBS () |
|
void | PrintTopo (std::ostream &out, const Array< int > &e_to_k) const |
|
void | BisectTriTrans (DenseMatrix &pointmat, Triangle *tri, int child) |
|
void | BisectTetTrans (DenseMatrix &pointmat, Tetrahedron *tet, int child) |
|
int | GetFineElemPath (int i, int j) |
|
int | GetBisectionHierarchy (Element *E) |
|
void | GetLocalPtToSegTransformation (IsoparametricTransformation &, int) |
| Used in GetFaceElementTransformations (...) More...
|
|
void | GetLocalSegToTriTransformation (IsoparametricTransformation &loc, int i) |
|
void | GetLocalSegToQuadTransformation (IsoparametricTransformation &loc, int i) |
|
void | GetLocalTriToTetTransformation (IsoparametricTransformation &loc, int i) |
| Used in GetFaceElementTransformations (...) More...
|
|
void | GetLocalQuadToHexTransformation (IsoparametricTransformation &loc, int i) |
| Used in GetFaceElementTransformations (...) More...
|
|
void | ApplySlaveTransformation (IsoparametricTransformation &transf, const FaceInfo &fi) |
|
bool | IsSlaveFace (const FaceInfo &fi) |
|
void | GetVertexToVertexTable (DSTable &) const |
|
int | GetElementToEdgeTable (Table &, Array< int > &) |
|
void | AddPointFaceElement (int lf, int gf, int el) |
| Used in GenerateFaces() More...
|
|
void | AddSegmentFaceElement (int lf, int gf, int el, int v0, int v1) |
|
void | AddTriangleFaceElement (int lf, int gf, int el, int v0, int v1, int v2) |
|
void | AddQuadFaceElement (int lf, int gf, int el, int v0, int v1, int v2, int v3) |
|
bool | FaceIsTrueInterior (int FaceNo) const |
|
void | FreeElement (Element *E) |
|
void | GenerateFaces () |
|
void | GenerateNCFaceInfo () |
|
void | InitMesh (int _Dim, int _spaceDim, int NVert, int NElem, int NBdrElem) |
| Begin construction of a mesh. More...
|
|
void | Make3D (int nx, int ny, int nz, Element::Type type, int generate_edges, double sx, double sy, double sz) |
|
void | Make2D (int nx, int ny, Element::Type type, int generate_edges, double sx, double sy) |
|
void | Make1D (int n, double sx=1.0) |
| Creates a 1D mesh for the interval [0,sx] divided into n equal intervals. More...
|
|
void | InitFromNCMesh (const NCMesh &ncmesh) |
| Initialize vertices/elements/boundary/tables from a nonconforming mesh. More...
|
|
| Mesh (const NCMesh &ncmesh) |
| Create from a nonconforming mesh. More...
|
|
void | Swap (Mesh &other, bool non_geometry=false) |
|
static void | PrintElementWithoutAttr (const Element *, std::ostream &) |
|
static void | PrintElement (const Element *, std::ostream &) |
|
static int | GetTriOrientation (const int *base, const int *test) |
| Returns the orientation of "test" relative to "base". More...
|
|
static int | GetQuadOrientation (const int *base, const int *test) |
| Returns the orientation of "test" relative to "base". More...
|
|
static void | GetElementArrayEdgeTable (const Array< Element * > &elem_array, const DSTable &v_to_v, Table &el_to_edge) |
|
static void | ShiftL2R (int &, int &, int &) |
|
static void | Rotate3 (int &, int &, int &) |
|
int | Dim |
|
int | spaceDim |
|
int | NumOfVertices |
|
int | NumOfElements |
|
int | NumOfBdrElements |
|
int | NumOfEdges |
|
int | NumOfFaces |
|
int | State |
|
int | WantTwoLevelState |
|
int | meshgen |
|
int | c_NumOfVertices |
|
int | c_NumOfElements |
|
int | c_NumOfBdrElements |
|
int | f_NumOfVertices |
|
int | f_NumOfElements |
|
int | f_NumOfBdrElements |
|
int | c_NumOfEdges |
|
int | c_NumOfFaces |
|
int | f_NumOfEdges |
|
int | f_NumOfFaces |
|
Array< Element * > | elements |
|
Array< Vertex > | vertices |
|
Array< Element * > | boundary |
|
Array< Element * > | faces |
|
Array< FaceInfo > | faces_info |
|
Array< NCFaceInfo > | nc_faces_info |
|
Table * | el_to_edge |
|
Table * | el_to_face |
|
Table * | el_to_el |
|
Array< int > | be_to_edge |
|
Table * | bel_to_edge |
|
Array< int > | be_to_face |
|
Table * | face_edge |
|
Table * | edge_vertex |
|
Table * | c_el_to_edge |
|
Table * | f_el_to_edge |
|
Table * | c_bel_to_edge |
|
Table * | f_bel_to_edge |
|
Array< int > | fc_be_to_edge |
|
Table * | c_el_to_face |
|
Table * | f_el_to_face |
|
Array< FaceInfo > | fc_faces_info |
|
IsoparametricTransformation | Transformation |
|
IsoparametricTransformation | Transformation2 |
|
IsoparametricTransformation | FaceTransformation |
|
IsoparametricTransformation | EdgeTransformation |
|
FaceElementTransformations | FaceElemTr |
|
GridFunction * | Nodes |
|
int | own_nodes |
|
Mesh * | nc_coarse_level |
|
MemAlloc< Tetrahedron, 1024 > | TetMemory |
|
MemAlloc< BisectedElement, 1024 > | BEMemory |
|
static const int | tet_faces [4][3] |
|
static const int | hex_faces [6][4] |
|
static const int | tri_orientations [6][3] |
|
static const int | quad_orientations [8][4] |
|