NEMoSys  0.63.0
A modular, extensible resource with robust automated mesh generation, mesh quality analysis, adaptive mesh refinement, and data transfer between arbitrary meshes.
gmshTypes.H File Reference

Go to the source code of this file.

Enumerations

enum  GMSH_ALGO_TYPES {
  ALGO_2D_MESHADAPT = 1, ALGO_2D_AUTO = 2, ALGO_2D_DELAUNAY = 5, ALGO_2D_FRONTAL = 6,
  ALGO_2D_BAMG = 7, ALGO_2D_FRONTAL_QUAD = 8, ALGO_2D_PACK_PRLGRMS = 9, ALGO_2D_PACK_PRLGRMS_CSTR = 10
}
 The Gmsh types are taken from gmsh/GmshDefines.h header from Gmsh 4.4.1. More...
 
enum  GMSH_ALGO_3D {
  ALGO_3D_DELAUNAY = 1, ALGO_3D_FRONTAL = 4, ALGO_3D_MMG3D = 7, ALGO_3D_RTREE = 9,
  ALGO_3D_HXT = 10
}
 
enum  GMSH_ALGO_RECOMBINATION { ALGO_RECOMBINE_SIMPLE = 0, ALGO_RECOMBINE_BLOSSOM = 1, ALGO_RECOMBINE_SIMPLE_FULLQUAD = 2, ALGO_RECOMBINE_BLOSSOM_FULLQUAD = 3 }
 
enum  GMSH_MSH_TYPES {
  MSH_LIN_2 = 1, MSH_TRI_3 = 2, MSH_QUA_4 = 3, MSH_TET_4 = 4,
  MSH_HEX_8 = 5, MSH_PRI_6 = 6, MSH_PYR_5 = 7, MSH_LIN_3 = 8,
  MSH_TRI_6 = 9, MSH_QUA_9 = 10, MSH_TET_10 = 11, MSH_HEX_27 = 12,
  MSH_PRI_18 = 13, MSH_PYR_14 = 14, MSH_PNT = 15, MSH_QUA_8 = 16,
  MSH_HEX_20 = 17, MSH_PRI_15 = 18, MSH_PYR_13 = 19, MSH_TRI_9 = 20,
  MSH_TRI_10 = 21, MSH_TRI_12 = 22, MSH_TRI_15 = 23, MSH_TRI_15I = 24,
  MSH_TRI_21 = 25, MSH_LIN_4 = 26, MSH_LIN_5 = 27, MSH_LIN_6 = 28,
  MSH_TET_20 = 29, MSH_TET_35 = 30, MSH_TET_56 = 31, MSH_TET_22 = 32,
  MSH_TET_28 = 33, MSH_POLYG_ = 34, MSH_POLYH_ = 35, MSH_QUA_16 = 36,
  MSH_QUA_25 = 37, MSH_QUA_36 = 38, MSH_QUA_12 = 39, MSH_QUA_16I = 40,
  MSH_QUA_20 = 41, MSH_TRI_28 = 42, MSH_TRI_36 = 43, MSH_TRI_45 = 44,
  MSH_TRI_55 = 45, MSH_TRI_66 = 46, MSH_QUA_49 = 47, MSH_QUA_64 = 48,
  MSH_QUA_81 = 49, MSH_QUA_100 = 50, MSH_QUA_121 = 51, MSH_TRI_18 = 52,
  MSH_TRI_21I = 53, MSH_TRI_24 = 54, MSH_TRI_27 = 55, MSH_TRI_30 = 56,
  MSH_QUA_24 = 57, MSH_QUA_28 = 58, MSH_QUA_32 = 59, MSH_QUA_36I = 60,
  MSH_QUA_40 = 61, MSH_LIN_7 = 62, MSH_LIN_8 = 63, MSH_LIN_9 = 64,
  MSH_LIN_10 = 65, MSH_LIN_11 = 66, MSH_LIN_B = 67, MSH_TRI_B = 68,
  MSH_POLYG_B = 69, MSH_LIN_C = 70, MSH_TET_84 = 71, MSH_TET_120 = 72,
  MSH_TET_165 = 73, MSH_TET_220 = 74, MSH_TET_286 = 75, MSH_TET_34 = 79,
  MSH_TET_40 = 80, MSH_TET_46 = 81, MSH_TET_52 = 82, MSH_TET_58 = 83,
  MSH_LIN_1 = 84, MSH_TRI_1 = 85, MSH_QUA_1 = 86, MSH_TET_1 = 87,
  MSH_HEX_1 = 88, MSH_PRI_1 = 89, MSH_PRI_40 = 90, MSH_PRI_75 = 91,
  MSH_HEX_64 = 92, MSH_HEX_125 = 93, MSH_HEX_216 = 94, MSH_HEX_343 = 95,
  MSH_HEX_512 = 96, MSH_HEX_729 = 97, MSH_HEX_1000 = 98, MSH_HEX_32 = 99,
  MSH_HEX_44 = 100, MSH_HEX_56 = 101, MSH_HEX_68 = 102, MSH_HEX_80 = 103,
  MSH_HEX_92 = 104, MSH_HEX_104 = 105, MSH_PRI_126 = 106, MSH_PRI_196 = 107,
  MSH_PRI_288 = 108, MSH_PRI_405 = 109, MSH_PRI_550 = 110, MSH_PRI_24 = 111,
  MSH_PRI_33 = 112, MSH_PRI_42 = 113, MSH_PRI_51 = 114, MSH_PRI_60 = 115,
  MSH_PRI_69 = 116, MSH_PRI_78 = 117, MSH_PYR_30 = 118, MSH_PYR_55 = 119,
  MSH_PYR_91 = 120, MSH_PYR_140 = 121, MSH_PYR_204 = 122, MSH_PYR_285 = 123,
  MSH_PYR_385 = 124, MSH_PYR_21 = 125, MSH_PYR_29 = 126, MSH_PYR_37 = 127,
  MSH_PYR_45 = 128, MSH_PYR_53 = 129, MSH_PYR_61 = 130, MSH_PYR_69 = 131,
  MSH_PYR_1 = 132, MSH_PNT_SUB = 133, MSH_LIN_SUB = 134, MSH_TRI_SUB = 135,
  MSH_TET_SUB = 136, MSH_TET_16 = 137, MSH_TRI_MINI = 138, MSH_TET_MINI = 139,
  MSH_TRIH_4 = 140
}
 

Enumeration Type Documentation

◆ GMSH_ALGO_3D

Enumerator
ALGO_3D_DELAUNAY 
ALGO_3D_FRONTAL 
ALGO_3D_MMG3D 
ALGO_3D_RTREE 
ALGO_3D_HXT 

Definition at line 51 of file gmshTypes.H.

51  {
52  ALGO_3D_DELAUNAY = 1, // gmsh default
53  ALGO_3D_FRONTAL = 4,
54  ALGO_3D_MMG3D = 7,
55  ALGO_3D_RTREE = 9,
56  ALGO_3D_HXT = 10,
57 };

◆ GMSH_ALGO_RECOMBINATION

Enumerator
ALGO_RECOMBINE_SIMPLE 
ALGO_RECOMBINE_BLOSSOM 
ALGO_RECOMBINE_SIMPLE_FULLQUAD 
ALGO_RECOMBINE_BLOSSOM_FULLQUAD 

Definition at line 59 of file gmshTypes.H.

◆ GMSH_ALGO_TYPES

Useful regex when adding in bulk: (?<=MSH_*)*(?=[0-9]*$)

Note: enums are UNSCOPED. This is to enable compatibility when using gmsh functions as they take the int as the argument.

Enumerator
ALGO_2D_MESHADAPT 
ALGO_2D_AUTO 
ALGO_2D_DELAUNAY 
ALGO_2D_FRONTAL 
ALGO_2D_BAMG 
ALGO_2D_FRONTAL_QUAD 
ALGO_2D_PACK_PRLGRMS 
ALGO_2D_PACK_PRLGRMS_CSTR 

Definition at line 40 of file gmshTypes.H.

40  {
41  // Surface and Volume meshing algorithms
43  ALGO_2D_AUTO = 2,
44  ALGO_2D_DELAUNAY = 5,
45  ALGO_2D_FRONTAL = 6, // gmsh default
46  ALGO_2D_BAMG = 7,
49  ALGO_2D_PACK_PRLGRMS_CSTR = 10, // not in documentation
50 };

◆ GMSH_MSH_TYPES

Enumerator
MSH_LIN_2 
MSH_TRI_3 
MSH_QUA_4 
MSH_TET_4 
MSH_HEX_8 
MSH_PRI_6 
MSH_PYR_5 
MSH_LIN_3 
MSH_TRI_6 
MSH_QUA_9 
MSH_TET_10 
MSH_HEX_27 
MSH_PRI_18 
MSH_PYR_14 
MSH_PNT 
MSH_QUA_8 
MSH_HEX_20 
MSH_PRI_15 
MSH_PYR_13 
MSH_TRI_9 
MSH_TRI_10 
MSH_TRI_12 
MSH_TRI_15 
MSH_TRI_15I 
MSH_TRI_21 
MSH_LIN_4 
MSH_LIN_5 
MSH_LIN_6 
MSH_TET_20 
MSH_TET_35 
MSH_TET_56 
MSH_TET_22 
MSH_TET_28 
MSH_POLYG_ 
MSH_POLYH_ 
MSH_QUA_16 
MSH_QUA_25 
MSH_QUA_36 
MSH_QUA_12 
MSH_QUA_16I 
MSH_QUA_20 
MSH_TRI_28 
MSH_TRI_36 
MSH_TRI_45 
MSH_TRI_55 
MSH_TRI_66 
MSH_QUA_49 
MSH_QUA_64 
MSH_QUA_81 
MSH_QUA_100 
MSH_QUA_121 
MSH_TRI_18 
MSH_TRI_21I 
MSH_TRI_24 
MSH_TRI_27 
MSH_TRI_30 
MSH_QUA_24 
MSH_QUA_28 
MSH_QUA_32 
MSH_QUA_36I 
MSH_QUA_40 
MSH_LIN_7 
MSH_LIN_8 
MSH_LIN_9 
MSH_LIN_10 
MSH_LIN_11 
MSH_LIN_B 
MSH_TRI_B 
MSH_POLYG_B 
MSH_LIN_C 
MSH_TET_84 
MSH_TET_120 
MSH_TET_165 
MSH_TET_220 
MSH_TET_286 
MSH_TET_34 
MSH_TET_40 
MSH_TET_46 
MSH_TET_52 
MSH_TET_58 
MSH_LIN_1 
MSH_TRI_1 
MSH_QUA_1 
MSH_TET_1 
MSH_HEX_1 
MSH_PRI_1 
MSH_PRI_40 
MSH_PRI_75 
MSH_HEX_64 
MSH_HEX_125 
MSH_HEX_216 
MSH_HEX_343 
MSH_HEX_512 
MSH_HEX_729 
MSH_HEX_1000 
MSH_HEX_32 
MSH_HEX_44 
MSH_HEX_56 
MSH_HEX_68 
MSH_HEX_80 
MSH_HEX_92 
MSH_HEX_104 
MSH_PRI_126 
MSH_PRI_196 
MSH_PRI_288 
MSH_PRI_405 
MSH_PRI_550 
MSH_PRI_24 
MSH_PRI_33 
MSH_PRI_42 
MSH_PRI_51 
MSH_PRI_60 
MSH_PRI_69 
MSH_PRI_78 
MSH_PYR_30 
MSH_PYR_55 
MSH_PYR_91 
MSH_PYR_140 
MSH_PYR_204 
MSH_PYR_285 
MSH_PYR_385 
MSH_PYR_21 
MSH_PYR_29 
MSH_PYR_37 
MSH_PYR_45 
MSH_PYR_53 
MSH_PYR_61 
MSH_PYR_69 
MSH_PYR_1 
MSH_PNT_SUB 
MSH_LIN_SUB 
MSH_TRI_SUB 
MSH_TET_SUB 
MSH_TET_16 
MSH_TRI_MINI 
MSH_TET_MINI 
MSH_TRIH_4 

Definition at line 65 of file gmshTypes.H.

65  {
66  // Element types in .msh file format (numbers should not be changed)
67  MSH_LIN_2 = 1,
68  MSH_TRI_3 = 2,
69  MSH_QUA_4 = 3,
70  MSH_TET_4 = 4,
71  MSH_HEX_8 = 5,
72  MSH_PRI_6 = 6,
73  MSH_PYR_5 = 7,
74  MSH_LIN_3 = 8,
75  MSH_TRI_6 = 9,
76  MSH_QUA_9 = 10,
77  MSH_TET_10 = 11,
78  MSH_HEX_27 = 12,
79  MSH_PRI_18 = 13,
80  MSH_PYR_14 = 14,
81  MSH_PNT = 15,
82  MSH_QUA_8 = 16,
83  MSH_HEX_20 = 17,
84  MSH_PRI_15 = 18,
85  MSH_PYR_13 = 19,
86  MSH_TRI_9 = 20,
87  MSH_TRI_10 = 21,
88  MSH_TRI_12 = 22,
89  MSH_TRI_15 = 23,
90  MSH_TRI_15I = 24,
91  MSH_TRI_21 = 25,
92  MSH_LIN_4 = 26,
93  MSH_LIN_5 = 27,
94  MSH_LIN_6 = 28,
95  MSH_TET_20 = 29,
96  MSH_TET_35 = 30,
97  MSH_TET_56 = 31,
98  MSH_TET_22 = 32,
99  MSH_TET_28 = 33,
100  MSH_POLYG_ = 34,
101  MSH_POLYH_ = 35,
102  MSH_QUA_16 = 36,
103  MSH_QUA_25 = 37,
104  MSH_QUA_36 = 38,
105  MSH_QUA_12 = 39,
106  MSH_QUA_16I = 40,
107  MSH_QUA_20 = 41,
108  MSH_TRI_28 = 42,
109  MSH_TRI_36 = 43,
110  MSH_TRI_45 = 44,
111  MSH_TRI_55 = 45,
112  MSH_TRI_66 = 46,
113  MSH_QUA_49 = 47,
114  MSH_QUA_64 = 48,
115  MSH_QUA_81 = 49,
116  MSH_QUA_100 = 50,
117  MSH_QUA_121 = 51,
118  MSH_TRI_18 = 52,
119  MSH_TRI_21I = 53,
120  MSH_TRI_24 = 54,
121  MSH_TRI_27 = 55,
122  MSH_TRI_30 = 56,
123  MSH_QUA_24 = 57,
124  MSH_QUA_28 = 58,
125  MSH_QUA_32 = 59,
126  MSH_QUA_36I = 60,
127  MSH_QUA_40 = 61,
128  MSH_LIN_7 = 62,
129  MSH_LIN_8 = 63,
130  MSH_LIN_9 = 64,
131  MSH_LIN_10 = 65,
132  MSH_LIN_11 = 66,
133  MSH_LIN_B = 67,
134  MSH_TRI_B = 68,
135  MSH_POLYG_B = 69,
136  MSH_LIN_C = 70,
137  // TETS COMPLETE (6->10)
138  MSH_TET_84 = 71,
139  MSH_TET_120 = 72,
140  MSH_TET_165 = 73,
141  MSH_TET_220 = 74,
142  MSH_TET_286 = 75,
143  // TETS INCOMPLETE (6->10)
144  MSH_TET_34 = 79,
145  MSH_TET_40 = 80,
146  MSH_TET_46 = 81,
147  MSH_TET_52 = 82,
148  MSH_TET_58 = 83,
149  //
150  MSH_LIN_1 = 84,
151  MSH_TRI_1 = 85,
152  MSH_QUA_1 = 86,
153  MSH_TET_1 = 87,
154  MSH_HEX_1 = 88,
155  MSH_PRI_1 = 89,
156  MSH_PRI_40 = 90,
157  MSH_PRI_75 = 91,
158  // HEXES COMPLETE (3->9)
159  MSH_HEX_64 = 92,
160  MSH_HEX_125 = 93,
161  MSH_HEX_216 = 94,
162  MSH_HEX_343 = 95,
163  MSH_HEX_512 = 96,
164  MSH_HEX_729 = 97,
165  MSH_HEX_1000 = 98,
166  // HEXES INCOMPLETE (3->9)
167  MSH_HEX_32 = 99,
168  MSH_HEX_44 = 100,
169  MSH_HEX_56 = 101,
170  MSH_HEX_68 = 102,
171  MSH_HEX_80 = 103,
172  MSH_HEX_92 = 104,
173  MSH_HEX_104 = 105,
174  // PRISMS COMPLETE (5->9)
175  MSH_PRI_126 = 106,
176  MSH_PRI_196 = 107,
177  MSH_PRI_288 = 108,
178  MSH_PRI_405 = 109,
179  MSH_PRI_550 = 110,
180  // PRISMS INCOMPLETE (3->9)
181  MSH_PRI_24 = 111,
182  MSH_PRI_33 = 112,
183  MSH_PRI_42 = 113,
184  MSH_PRI_51 = 114,
185  MSH_PRI_60 = 115,
186  MSH_PRI_69 = 116,
187  MSH_PRI_78 = 117,
188  // PYRAMIDS COMPLETE (3->9)
189  MSH_PYR_30 = 118,
190  MSH_PYR_55 = 119,
191  MSH_PYR_91 = 120,
192  MSH_PYR_140 = 121,
193  MSH_PYR_204 = 122,
194  MSH_PYR_285 = 123,
195  MSH_PYR_385 = 124,
196  // PYRAMIDS INCOMPLETE (3->9)
197  MSH_PYR_21 = 125,
198  MSH_PYR_29 = 126,
199  MSH_PYR_37 = 127,
200  MSH_PYR_45 = 128,
201  MSH_PYR_53 = 129,
202  MSH_PYR_61 = 130,
203  MSH_PYR_69 = 131,
204  // Additional types
205  MSH_PYR_1 = 132,
206  MSH_PNT_SUB = 133,
207  MSH_LIN_SUB = 134,
208  MSH_TRI_SUB = 135,
209  MSH_TET_SUB = 136,
210  MSH_TET_16 = 137,
211  MSH_TRI_MINI = 138,
212  MSH_TET_MINI = 139,
213  MSH_TRIH_4 = 140
214 };