Hermes2D
3.0
|
Class to stored 2d mesh parameters. The MeshData class organizes all the necessary data structures required to store information in the input mesh file. All variables are stored internally as a mapping between strings and a list of strings. Symbolic expressions are not supported for variables. The variables are stored in a vector of strings. This is true for single-valued variables, lists and list of lists. The contents of the variables are thus accessed differently depending on their contents. More...
#include <mesh_data.h>
Public Member Functions | |
void | parse_mesh (void) |
This function parses a given input mesh file line by line and extracts the necessary information into the MeshData class variables. | |
MeshData (const std::string &mesh_file) | |
MeshData Constructor. | |
MeshData (const MeshData &m) | |
MeshData Copy Constructor. | |
MeshData & | operator= (const MeshData &m) |
MeshData Assignment Operator. | |
~MeshData () | |
MeshData Destructor. | |
Public Attributes | |
std::map< std::string, std::vector< std::string > > | vars_ |
Map for storing variables in input mesh file. | |
int | n_vert |
Number of vertices. | |
int | n_el |
Number of elements. | |
int | n_bdy |
Number of boundary edges. | |
int | n_curv |
Number of curved edges (including NURBS curves) | |
int | n_ref |
Number of elements with specified refinements. | |
std::vector< double > | x_vertex |
x-coordinate of the vertices | |
std::vector< double > | y_vertex |
y-coordinate of the vertices | |
std::vector< int > | en1 |
Nodes with local node number 1. | |
std::vector< int > | en2 |
Nodes with local node number 2. | |
std::vector< int > | en3 |
Nodes with local node number 3. | |
std::vector< int > | en4 |
Nodes with local node number 4. Only for quadrilateral elements. For triangular elements it is set to -1. | |
std::vector< std::string > | e_mtl |
Element markers – single word strings. | |
std::vector< int > | bdy_first |
First node of a boundary edge. | |
std::vector< int > | bdy_second |
Second node of a boundary edge. | |
std::vector< std::string > | bdy_type |
Boundary name. | |
std::vector< int > | curv_first |
First node of a curved edge. | |
std::vector< int > | curv_second |
Second node of a curved edge. | |
std::vector< double > | curv_third |
Third entry of a curve specification. Angle for a circular arc and degree for a NURBS curve. | |
std::vector< std::string > | curv_inner_pts |
Name of the list of the control points and weights of a NURBS curve. Set to "none" for a circular arc. | |
std::vector< std::string > | curv_knots |
Name of the list of knot vectors of a NURBS curve. Set to "none" for a circular arc. | |
std::vector< bool > | curv_nurbs |
Nurbs Indicator. True if curve is modeled with NURBS. False if it is a circular arc. | |
std::vector< int > | ref_elt |
List of elements to be refined. | |
std::vector< int > | ref_type |
List of element refinement type. | |
Class to stored 2d mesh parameters. The MeshData class organizes all the necessary data structures required to store information in the input mesh file. All variables are stored internally as a mapping between strings and a list of strings. Symbolic expressions are not supported for variables. The variables are stored in a vector of strings. This is true for single-valued variables, lists and list of lists. The contents of the variables are thus accessed differently depending on their contents.
Definition at line 40 of file mesh_data.h.