|
| ParMesh () |
| Default constructor. Create an empty ParMesh. More...
|
|
| ParMesh (MPI_Comm comm, Mesh &mesh, int *partitioning_=NULL, int part_method=1) |
| Create a parallel mesh by partitioning a serial Mesh. More...
|
|
| ParMesh (const ParMesh &pmesh, bool copy_nodes=true) |
|
| ParMesh (MPI_Comm comm, std::istream &input, bool refine=true) |
| Read a parallel mesh, each MPI rank from its own file/stream. More...
|
|
MFEM_DEPRECATED | ParMesh (ParMesh *orig_mesh, int ref_factor, int ref_type) |
| Deprecated: see ParMesh::MakeRefined. More...
|
|
| ParMesh (ParMesh &&mesh) |
| Move constructor. Used for named constructors. More...
|
|
ParMesh & | operator= (ParMesh &&mesh) |
| Move assignment operator. More...
|
|
ParMesh & | operator= (ParMesh &mesh)=delete |
| Explicitly delete the copy assignment operator. More...
|
|
virtual void | Finalize (bool refine=false, bool fix_orientation=false) |
| Finalize the construction of a general Mesh. More...
|
|
virtual void | SetAttributes () |
|
MPI_Comm | GetComm () const |
|
int | GetNRanks () const |
|
int | GetMyRank () const |
|
int | GetLocalElementNum (long global_element_num) const |
|
long | GetGlobalElementNum (int local_element_num) const |
| Map a local element number to a global element number. More...
|
|
void | GetGlobalVertexIndices (Array< HYPRE_Int > &gi) const |
| AMR meshes are not supported. More...
|
|
void | GetGlobalEdgeIndices (Array< HYPRE_Int > &gi) const |
| AMR meshes are not supported. More...
|
|
void | GetGlobalFaceIndices (Array< HYPRE_Int > &gi) const |
| AMR meshes are not supported. More...
|
|
void | GetGlobalElementIndices (Array< HYPRE_Int > &gi) const |
| AMR meshes are supported. More...
|
|
int | GetNGroups () const |
|
void | GenerateOffsets (int N, HYPRE_BigInt loc_sizes[], Array< HYPRE_BigInt > *offsets[]) const |
|
void | ExchangeFaceNbrData () |
|
void | ExchangeFaceNbrNodes () |
|
virtual void | SetCurvature (int order, bool discont=false, int space_dim=-1, int ordering=1) |
|
int | GetNFaceNeighbors () const |
|
int | GetNFaceNeighborElements () const |
|
int | GetFaceNbrGroup (int fn) const |
|
int | GetFaceNbrRank (int fn) const |
|
Table * | GetFaceToAllElementTable () const |
|
FaceElementTransformations * | GetSharedFaceTransformations (int sf, bool fill2=true) |
|
ElementTransformation * | GetFaceNbrElementTransformation (int i) |
|
double | GetFaceNbrElementSize (int i, int type=0) |
|
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...
|
|
virtual long | ReduceInt (int value) const |
| Utility function: sum integers from all processors (Allreduce). More...
|
|
void | Rebalance () |
|
void | Rebalance (const Array< int > &partition) |
|
void | ParPrint (std::ostream &out) const |
| Save the mesh in a parallel mesh format. More...
|
|
virtual void | Print (std::ostream &out=mfem::out) const |
|
virtual void | Save (const char *fname, int precision=16) const |
|
virtual void | Print (adios2stream &out) const |
|
virtual void | PrintXG (std::ostream &out=mfem::out) const |
|
void | PrintAsOne (std::ostream &out=mfem::out) const |
|
void | SaveAsOne (const char *fname, int precision=16) const |
|
void | PrintAsOneXG (std::ostream &out=mfem::out) |
| Old mesh format (Netgen/Truegrid) version of 'PrintAsOne'. More...
|
|
virtual void | PrintVTU (std::string pathname, VTKFormat format=VTKFormat::ASCII, bool high_order_output=false, int compression_level=0, bool bdr=false) |
|
virtual void | Load (std::istream &input, int generate_edges=0, int refine=1, bool fix_orientation=true) |
| Parallel version of Mesh::Load(). More...
|
|
void | GetBoundingBox (Vector &p_min, Vector &p_max, int ref=2) |
|
void | GetCharacteristics (double &h_min, double &h_max, double &kappa_min, double &kappa_max) |
|
void | Swap (ParMesh &other) |
|
virtual void | PrintInfo (std::ostream &out=mfem::out) |
| Print various parallel mesh stats. More...
|
|
virtual int | FindPoints (DenseMatrix &point_mat, Array< int > &elem_ids, Array< IntegrationPoint > &ips, bool warn=true, InverseElementTransformation *inv_trans=NULL) |
| Find the ids of the elements that contain the given points, and their corresponding reference coordinates. More...
|
|
void | PrintSharedEntities (const char *fname_prefix) const |
| Debugging method. More...
|
|
virtual | ~ParMesh () |
|
|
int | GroupNVertices (int group) |
|
int | GroupNEdges (int group) |
|
int | GroupNTriangles (int group) |
|
int | GroupNQuadrilaterals (int group) |
|
int | GroupVertex (int group, int i) |
|
void | GroupEdge (int group, int i, int &edge, int &o) |
|
void | GroupTriangle (int group, int i, int &face, int &o) |
|
void | GroupQuadrilateral (int group, int i, int &face, int &o) |
|
| Mesh () |
|
| Mesh (const Mesh &mesh, bool copy_nodes=true) |
|
| Mesh (Mesh &&mesh) |
| Move constructor, useful for using a Mesh as a function return value. More...
|
|
Mesh & | operator= (Mesh &&mesh) |
| Move assignment operstor. More...
|
|
Mesh & | operator= (Mesh &mesh)=delete |
| Explicitly delete the copy assignment operator. More...
|
|
std::vector< int > | CreatePeriodicVertexMapping (const std::vector< Vector > &translations, double tol=1e-8) const |
| Creates a mapping v2v from the vertex indices of the mesh such that coincident vertices under the given translations are identified. More...
|
|
| Mesh (double *vertices, int num_vertices, int *element_indices, Geometry::Type element_type, int *element_attributes, int num_elements, int *boundary_indices, Geometry::Type boundary_type, int *boundary_attributes, int num_boundary_elements, int dimension, int space_dimension=-1) |
| Construct a Mesh from the given primary data. More...
|
|
| Mesh (int Dim_, int NVert, int NElem, int NBdrElem=0, int spaceDim_=-1) |
| Init constructor: begin the construction of a Mesh object. More...
|
|
void | FinalizeTopology (bool generate_bdr=true) |
| Finalize the construction of the secondary topology (connectivity) data of a Mesh. More...
|
|
double | GetGeckoElementOrdering (Array< int > &ordering, int iterations=4, int window=4, int period=2, int seed=0, bool verbose=false, double time_limit=0) |
|
void | GetHilbertElementOrdering (Array< int > &ordering) |
|
void | ReorderElements (const Array< int > &ordering, bool reorder_vertices=true) |
|
MFEM_DEPRECATED | Mesh (int nx, int ny, int nz, Element::Type type, bool generate_edges=false, double sx=1.0, double sy=1.0, double sz=1.0, bool sfc_ordering=true) |
| Deprecated: see MakeCartesian3D. More...
|
|
MFEM_DEPRECATED | Mesh (int nx, int ny, Element::Type type, bool generate_edges=false, double sx=1.0, double sy=1.0, bool sfc_ordering=true) |
| Deprecated: see MakeCartesian2D. More...
|
|
MFEM_DEPRECATED | Mesh (int n, double sx=1.0) |
| Deprecated: see MakeCartesian1D. More...
|
|
| Mesh (const char *filename, int generate_edges=0, int refine=1, bool fix_orientation=true) |
|
| 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...
|
|
MFEM_DEPRECATED | Mesh (Mesh *orig_mesh, int ref_factor, int ref_type) |
| Deprecated: see MakeRefined. More...
|
|
void | Clear () |
| Clear the contents of the Mesh. More...
|
|
int | MeshGenerator () |
| Get the mesh generator/type. More...
|
|
int | GetNV () const |
| Returns number of vertices. Vertices are only at the corners of elements, where you would expect them in the lowest-order mesh. More...
|
|
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 | GetNFbyType (FaceType type) const |
| Returns the number of faces according to the requested type. More...
|
|
long | GetGlobalNE () const |
| Return the total (global) number of elements. More...
|
|
const GeometricFactors * | GetGeometricFactors (const IntegrationRule &ir, const int flags, MemoryType d_mt=MemoryType::DEFAULT) |
| Return the mesh geometric factors corresponding to the given integration rule. More...
|
|
const FaceGeometricFactors * | GetFaceGeometricFactors (const IntegrationRule &ir, const int flags, FaceType type) |
| Return the mesh geometric factors for the faces corresponding to the given integration rule. More...
|
|
void | DeleteGeometricFactors () |
| Destroy all GeometricFactors stored by the Mesh. 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) |
| Return pointer to vertex i's coordinates. More...
|
|
void | GetElementData (int geom, Array< int > &elem_vtx, Array< int > &attr) const |
|
void | GetBdrElementData (int geom, Array< int > &bdr_elem_vtx, Array< int > &bdr_attr) const |
|
void | ChangeVertexDataOwnership (double *vertices, int len_vertices, bool zerocopy=false) |
| Set the internal Vertex array to point to the given vertices array without assuming ownership of the pointer. More...
|
|
const Element *const * | GetElementsArray () const |
|
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 |
|
Geometry::Type | GetFaceGeometry (int i) const |
|
Geometry::Type | GetElementGeometry (int i) const |
|
Geometry::Type | GetBdrElementGeometry (int i) const |
|
Geometry::Type | GetFaceBaseGeometry (int i) const |
|
Geometry::Type | GetElementBaseGeometry (int i) const |
|
Geometry::Type | GetBdrElementBaseGeometry (int i) const |
|
bool | HasGeometry (Geometry::Type geom) const |
| Return true iff the given geom is encountered in the mesh. Geometries of dimensions lower than Dimension() are counted as well. More...
|
|
int | GetNumGeometries (int dim) const |
| Return the number of geometries of the given dimension present in the mesh. More...
|
|
void | GetGeometries (int dim, Array< Geometry::Type > &el_geoms) const |
| Return all element geometries of the given dimension present in the mesh. More...
|
|
void | GetElementVertices (int i, Array< int > &v) const |
| Returns the indices of the vertices of element i. More...
|
|
void | GetBdrElementVertices (int i, Array< int > &v) const |
| Returns the indices of the vertices 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 > &edges, Array< int > &o) 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 > &faces, Array< int > &ori) const |
| Return the indices and the orientations of all faces of element i. More...
|
|
void | GetBdrElementFace (int i, int *f, int *o) const |
| Return the index and the orientation of the face of bdr element i. (3D) More...
|
|
int | GetBdrElementEdgeIndex (int i) const |
|
void | GetBdrElementAdjacentElement (int bdr_el, int &el, int &info) const |
| For the given boundary element, bdr_el, return its adjacent element and its info, i.e. 64*local_bdr_index+bdr_orientation. More...
|
|
Element::Type | GetElementType (int i) const |
| Returns the type of element i. More...
|
|
Element::Type | 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) |
| Returns the transformation defining the given face element in a user-defined variable. More...
|
|
void | GetLocalFaceTransformation (int face_type, int elem_type, IsoparametricTransformation &Transf, int info) |
| A helper method that constructs a transformation from the reference space of a face to the reference space of an element. More...
|
|
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) |
|
int | GetBdrFace (int BdrElemNo) const |
| Return the local face index for the given boundary face. More...
|
|
bool | FaceIsInterior (int FaceNo) const |
| Return true if the given face is interior. More...
|
|
void | GetFaceElements (int Face, int *Elem1, int *Elem2) const |
|
void | GetFaceInfos (int Face, int *Inf1, int *Inf2) const |
|
void | GetFaceInfos (int Face, int *Inf1, int *Inf2, int *NCFace) const |
|
Geometry::Type | GetFaceGeometryType (int Face) const |
|
Element::Type | GetFaceElementType (int Face) const |
|
int | CheckElementOrientation (bool fix_it=true) |
| Check (and optionally attempt to fix) the orientation of the elements. More...
|
|
int | 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...
|
|
void | SetAttribute (int i, int attr) |
| Set the attribute of element i. More...
|
|
int | GetBdrAttribute (int i) const |
| Return the attribute of boundary element i. More...
|
|
void | SetBdrAttribute (int i, int attr) |
| Set 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) const |
|
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...
|
|
const GridFunction * | GetNodes () const |
|
bool | OwnsNodes () const |
| Return the mesh nodes ownership flag. More...
|
|
void | SetNodesOwner (bool nodes_owner) |
| Set the mesh nodes ownership flag. 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 () const |
|
void | EnsureNodes () |
|
void | UniformRefinement (int ref_algo=0) |
| Refine all mesh elements. More...
|
|
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 | RandomRefinement (double prob, bool aniso=false, int nonconforming=-1, int nc_limit=0) |
| Refine each element with given probability. Uses GeneralRefinement. More...
|
|
void | RefineAtVertex (const Vertex &vert, double eps=0.0, int nonconforming=-1) |
| Refine elements sharing the specified vertex. Uses GeneralRefinement. More...
|
|
bool | RefineByError (const Array< double > &elem_error, double threshold, int nonconforming=-1, int nc_limit=0) |
|
bool | RefineByError (const Vector &elem_error, double threshold, int nonconforming=-1, int nc_limit=0) |
|
bool | DerefineByError (Array< double > &elem_error, double threshold, int nc_limit=0, int op=1) |
|
bool | DerefineByError (const Vector &elem_error, double threshold, int nc_limit=0, int op=1) |
| Same as DerefineByError for an error vector. More...
|
|
void | EnsureNCMesh (bool simplices_nonconforming=false) |
|
bool | Conforming () const |
|
bool | Nonconforming () const |
|
const CoarseFineTransformations & | GetRefinementTransforms () |
|
Operation | GetLastOperation () const |
| Return type of last modification of the mesh. More...
|
|
long | GetSequence () const |
|
void | PrintVTK (std::ostream &out) |
|
void | PrintVTK (std::ostream &out, int ref, int field_data=0) |
|
void | PrintVTU (std::ostream &out, int ref=1, VTKFormat format=VTKFormat::ASCII, bool high_order_output=false, int compression_level=0, bool bdr_elements=false) |
|
void | PrintBdrVTU (std::string fname, VTKFormat format=VTKFormat::ASCII, bool high_order_output=false, int compression_level=0) |
|
void | GetElementColoring (Array< int > &colors, int el0=0) |
|
void | PrintWithPartitioning (int *partitioning, std::ostream &out, int elem_attr=0) const |
| Prints the mesh with boundary elements given by the boundary of the subdomains, so that the boundary of subdomain i has boundary attribute i+1. More...
|
|
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) |
| Get the size of the i-th element relative to the perfect reference element. More...
|
|
double | GetElementSize (int i, const Vector &dir) |
|
double | GetElementVolume (int i) |
|
void | GetElementCenter (int i, Vector ¢er) |
|
void | GetBoundingBox (Vector &min, Vector &max, int ref=2) |
| Returns the minimum and maximum corners of the mesh bounding box. More...
|
|
void | GetCharacteristics (double &h_min, double &h_max, double &kappa_min, double &kappa_max, Vector *Vh=NULL, Vector *Vk=NULL) |
|
void | PrintCharacteristics (Vector *Vh=NULL, Vector *Vk=NULL, std::ostream &out=mfem::out) |
| Compute and print mesh characteristics such as number of vertices, number of elements, number of boundary elements, minimal and maximal element sizes, minimal and maximal element aspect ratios, etc. More...
|
|
void | MesquiteSmooth (const int mesquite_option=0) |
|
void | Swap (Mesh &other, bool non_geometry) |
|
virtual | ~Mesh () |
| Destroys Mesh. More...
|
|
void | DebugDump (std::ostream &out) const |
| Output an NCMesh-compatible debug dump. More...
|
|
Element * | NewElement (int geom) |
|
int | AddVertex (double x, double y=0.0, double z=0.0) |
|
int | AddVertex (const double *coords) |
|
void | AddVertexParents (int i, int p1, int p2) |
| Mark vertex i as non-conforming, with parent vertices p1 and p2. More...
|
|
int | AddSegment (int v1, int v2, int attr=1) |
|
int | AddSegment (const int *vi, int attr=1) |
|
int | AddTriangle (int v1, int v2, int v3, int attr=1) |
|
int | AddTriangle (const int *vi, int attr=1) |
|
int | AddTri (const int *vi, int attr=1) |
|
int | AddQuad (int v1, int v2, int v3, int v4, int attr=1) |
|
int | AddQuad (const int *vi, int attr=1) |
|
int | AddTet (int v1, int v2, int v3, int v4, int attr=1) |
|
int | AddTet (const int *vi, int attr=1) |
|
int | AddWedge (int v1, int v2, int v3, int v4, int v5, int v6, int attr=1) |
|
int | AddWedge (const int *vi, int attr=1) |
|
int | AddHex (int v1, int v2, int v3, int v4, int v5, int v6, int v7, int v8, int attr=1) |
|
int | AddHex (const int *vi, int attr=1) |
|
void | AddHexAsTets (const int *vi, int attr=1) |
|
void | AddHexAsWedges (const int *vi, int attr=1) |
|
int | AddElement (Element *elem) |
| The parameter elem should be allocated using the NewElement() method. More...
|
|
int | AddBdrElement (Element *elem) |
|
int | AddBdrSegment (int v1, int v2, int attr=1) |
|
int | AddBdrSegment (const int *vi, int attr=1) |
|
int | AddBdrTriangle (int v1, int v2, int v3, int attr=1) |
|
int | AddBdrTriangle (const int *vi, int attr=1) |
|
int | AddBdrQuad (int v1, int v2, int v3, int v4, int attr=1) |
|
int | AddBdrQuad (const int *vi, int attr=1) |
|
void | AddBdrQuadAsTriangles (const int *vi, int attr=1) |
|
int | AddBdrPoint (int v, int attr=1) |
|
void | GenerateBoundaryElements () |
|
void | FinalizeTriMesh (int generate_edges=0, int refine=0, bool fix_orientation=true) |
| Finalize the construction of a triangular Mesh. More...
|
|
void | FinalizeQuadMesh (int generate_edges=0, int refine=0, bool fix_orientation=true) |
| Finalize the construction of a quadrilateral Mesh. More...
|
|
void | FinalizeTetMesh (int generate_edges=0, int refine=0, bool fix_orientation=true) |
| Finalize the construction of a tetrahedral Mesh. More...
|
|
void | FinalizeWedgeMesh (int generate_edges=0, int refine=0, bool fix_orientation=true) |
| Finalize the construction of a wedge Mesh. More...
|
|
void | FinalizeHexMesh (int generate_edges=0, int refine=0, bool fix_orientation=true) |
| Finalize the construction of a hexahedral Mesh. More...
|
|
void | FinalizeMesh (int refine=0, bool fix_orientation=true) |
| Finalize the construction of any type of Mesh. More...
|
|
void | KnotInsert (Array< KnotVector * > &kv) |
|
void | KnotInsert (Array< Vector * > &kv) |
|
void | DegreeElevate (int rel_degree, int degree=16) |
|
|
void | ComputeGlobalElementOffset () const |
|
| ParMesh (const ParNCMesh &pncmesh) |
| Create from a nonconforming mesh. More...
|
|
void | ReduceMeshGen () |
|
void | FinalizeParTopo () |
|
virtual void | MarkTetMeshForRefinement (DSTable &v_to_v) |
|
int | GetEdgeSplittings (Element *edge, const DSTable &v_to_v, int *middle) |
| Return a number(0-1) identifying how the given edge has been split. More...
|
|
void | GetFaceSplittings (const int *fv, const HashTable< Hashed2 > &v_to_v, Array< unsigned > &codes) |
| Append codes identifying how the given face has been split to codes. More...
|
|
bool | DecodeFaceSplittings (HashTable< Hashed2 > &v_to_v, const int *v, const Array< unsigned > &codes, int &pos) |
|
void | GetFaceNbrElementTransformation (int i, IsoparametricTransformation *ElTr) |
|
void | GetGhostFaceTransformation (FaceElementTransformations *FETr, Element::Type face_type, Geometry::Type face_geom) |
|
void | RefineGroups (const DSTable &v_to_v, int *middle) |
| Update the groups after triangle refinement. More...
|
|
void | RefineGroups (int old_nv, const HashTable< Hashed2 > &v_to_v) |
| Update the groups after tetrahedron refinement. More...
|
|
void | UniformRefineGroups2D (int old_nv) |
|
void | UniformRefineGroups3D (int old_nv, int old_nedges, const DSTable &old_v_to_v, const STable3D &old_faces, Array< int > *f2qf) |
|
void | ExchangeFaceNbrData (Table *gr_sface, int *s2l_face) |
|
virtual void | UniformRefinement2D () |
| Refine a mixed 2D mesh uniformly. More...
|
|
virtual void | UniformRefinement3D () |
| Refine a mixed 3D mesh uniformly. More...
|
|
virtual void | NURBSUniformRefinement () |
| Refine NURBS mesh. More...
|
|
virtual void | LocalRefinement (const Array< int > &marked_el, int type=3) |
| This function is not public anymore. Use GeneralRefinement instead. More...
|
|
virtual void | NonconformingRefinement (const Array< Refinement > &refinements, int nc_limit=0) |
| This function is not public anymore. Use GeneralRefinement instead. More...
|
|
virtual bool | NonconformingDerefinement (Array< double > &elem_error, double threshold, int nc_limit=0, int op=1) |
| NC version of GeneralDerefinement. More...
|
|
void | RebalanceImpl (const Array< int > *partition) |
|
void | DeleteFaceNbrData () |
|
bool | WantSkipSharedMaster (const NCMesh::Master &master) const |
|
int | BuildLocalVertices (const Mesh &global_mesh, const int *partitioning, Array< int > &vert_global_local) |
| Fills out partitioned Mesh::vertices. More...
|
|
int | BuildLocalElements (const Mesh &global_mesh, const int *partitioning, const Array< int > &vert_global_local) |
| Fills out partitioned Mesh::elements. More...
|
|
int | BuildLocalBoundary (const Mesh &global_mesh, const int *partitioning, const Array< int > &vert_global_local, Array< bool > &activeBdrElem, Table *&edge_element) |
| Fills out partitioned Mesh::boundary. More...
|
|
void | FindSharedFaces (const Mesh &mesh, const int *partition, Array< int > &face_group, ListOfIntegerSets &groups) |
|
int | FindSharedEdges (const Mesh &mesh, const int *partition, Table *&edge_element, ListOfIntegerSets &groups) |
|
int | FindSharedVertices (const int *partition, Table *vertex_element, ListOfIntegerSets &groups) |
|
void | BuildFaceGroup (int ngroups, const Mesh &mesh, const Array< int > &face_group, int &nstria, int &nsquad) |
|
void | BuildEdgeGroup (int ngroups, const Table &edge_element) |
|
void | BuildVertexGroup (int ngroups, const Table &vert_element) |
|
void | BuildSharedFaceElems (int ntri_faces, int nquad_faces, const Mesh &mesh, int *partitioning, const STable3D *faces_tbl, const Array< int > &face_group, const Array< int > &vert_global_local) |
|
void | BuildSharedEdgeElems (int nedges, Mesh &mesh, const Array< int > &vert_global_local, const Table *edge_element) |
|
void | BuildSharedVertMapping (int nvert, const Table *vert_element, const Array< int > &vert_global_local) |
|
void | DistributeAttributes (Array< int > &attr) |
| Ensure that bdr_attributes and attributes agree across processors. More...
|
|
void | LoadSharedEntities (std::istream &input) |
|
void | EnsureParNodes () |
| If the mesh is curved, make sure 'Nodes' is ParGridFunction. More...
|
|
void | MakeRefined_ (ParMesh &orig_mesh, int ref_factor, int ref_type) |
| Internal function used in ParMesh::MakeRefined (and related constructor) More...
|
|
void | Destroy () |
|
void | Init () |
|
void | InitTables () |
|
void | SetEmpty () |
|
void | DestroyTables () |
|
void | DeleteTables () |
|
void | DestroyPointers () |
|
void | Destroy () |
|
void | ResetLazyData () |
|
Element * | ReadElementWithoutAttr (std::istream &) |
|
Element * | ReadElement (std::istream &) |
|
void | ReadMFEMMesh (std::istream &input, int version, int &curved) |
|
void | ReadLineMesh (std::istream &input) |
|
void | ReadNetgen2DMesh (std::istream &input, int &curved) |
|
void | ReadNetgen3DMesh (std::istream &input) |
|
void | ReadTrueGridMesh (std::istream &input) |
|
void | CreateVTKMesh (const Vector &points, const Array< int > &cell_data, const Array< int > &cell_offsets, const Array< int > &cell_types, const Array< int > &cell_attributes, int &curved, int &read_gf, bool &finalize_topo) |
|
void | ReadVTKMesh (std::istream &input, int &curved, int &read_gf, bool &finalize_topo) |
|
void | ReadXML_VTKMesh (std::istream &input, int &curved, int &read_gf, bool &finalize_topo, const std::string &xml_prefix="") |
|
void | ReadNURBSMesh (std::istream &input, int &curved, int &read_gf) |
|
void | ReadInlineMesh (std::istream &input, bool generate_edges=false) |
|
void | ReadGmshMesh (std::istream &input, int &curved, int &read_gf) |
|
void | ReadCubit (const char *filename, int &curved, int &read_gf) |
|
void | SetMeshGen () |
| Determine the mesh generator bitmask meshgen, see MeshGenerator(). More...
|
|
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 | 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 *) |
| Bisect a triangle: element with index i is bisected. More...
|
|
void | Bisection (int i, HashTable< Hashed2 > &) |
| Bisect a tetrahedron: element with index i is bisected. More...
|
|
void | BdrBisection (int i, const HashTable< Hashed2 > &) |
| Bisect a boundary triangle: boundary element with index i is bisected. More...
|
|
void | UniformRefinement (int i, const DSTable &, int *, int *, int *) |
|
void | AverageVertices (const int *indexes, int n, int result) |
| Averages the vertices with given indexes and saves the result in vertices[result]. More...
|
|
void | InitRefinementTransforms () |
|
int | FindCoarseElement (int i) |
|
void | UpdateNodes () |
| Update the nodes of a curved mesh after refinement. More...
|
|
void | SetVerticesFromNodes (const GridFunction *nodes) |
| Helper to set vertex coordinates given a high-order curvature function. More...
|
|
void | UniformRefinement2D_base (bool update_nodes=true) |
|
void | UniformRefinement3D_base (Array< int > *f2qf=NULL, DSTable *v_to_v_p=NULL, bool update_nodes=true) |
|
double | AggregateError (const Array< double > &elem_error, const int *fine, int nfine, int op) |
| Derefinement helper. 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 | 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 | GetLocalTriToWdgTransformation (IsoparametricTransformation &loc, int i) |
| Used in GetFaceElementTransformations (...) More...
|
|
void | GetLocalQuadToHexTransformation (IsoparametricTransformation &loc, int i) |
| Used in GetFaceElementTransformations (...) More...
|
|
void | GetLocalQuadToWdgTransformation (IsoparametricTransformation &loc, int i) |
| Used in GetFaceElementTransformations (...) More...
|
|
void | ApplyLocalSlaveTransformation (FaceElementTransformations &FT, const FaceInfo &fi, bool is_ghost) |
|
bool | IsSlaveFace (const FaceInfo &fi) const |
|
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 | FinalizeCheck () |
|
void | Loader (std::istream &input, int generate_edges=0, std::string parse_tag="") |
|
void | Printer (std::ostream &out=mfem::out, std::string section_delimiter="") const |
|
void | Make3D (int nx, int ny, int nz, Element::Type type, double sx, double sy, double sz, bool sfc_ordering) |
|
void | Make2D (int nx, int ny, Element::Type type, double sx, double sy, bool generate_edges, bool sfc_ordering) |
|
void | Make1D (int n, double sx=1.0) |
| Creates a 1D mesh for the interval [0,sx] divided into n equal intervals. More...
|
|
void | MakeRefined_ (Mesh &orig_mesh, const Array< int > ref_factors, int ref_type) |
| Internal function used in Mesh::MakeRefined. 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 | GetElementData (const Array< Element * > &elem_array, int geom, Array< int > &elem_vtx, Array< int > &attr) const |
|
double | GetElementSize (ElementTransformation *T, int type=0) |
|
void | MakeSimplicial_ (const Mesh &orig_mesh, int *vglobal) |
|