FrontISTR  5.7.1
Large-scale structural analysis program with finit element method
hecmw_etype.c
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2019 FrontISTR Commons
3  * This software is released under the MIT License, see LICENSE.txt
4  *****************************************************************************/
5 
6 #include <stdlib.h>
7 #include "hecmw_common_define.h"
8 #include "hecmw_etype.h"
9 
10 extern int HECMW_get_etype_UTIL2HECMW(int etype) {
11  switch (etype) {
13  return HECMW_ETYPE_ROD1;
15  return HECMW_ETYPE_ROD2;
17  return HECMW_ETYPE_TRI1;
19  return HECMW_ETYPE_TRI2;
21  return HECMW_ETYPE_TRI22;
23  return HECMW_ETYPE_QUA1;
25  return HECMW_ETYPE_QUA2;
27  return HECMW_ETYPE_ROD31;
29  return HECMW_ETYPE_TET1;
31  return HECMW_ETYPE_TET1_4;
33  return HECMW_ETYPE_TET2;
35  return HECMW_ETYPE_TET22;
37  return HECMW_ETYPE_PRI1;
39  return HECMW_ETYPE_PRI2;
41  return HECMW_ETYPE_HEX1;
43  return HECMW_ETYPE_HEX1_4;
45  return HECMW_ETYPE_HEX2;
47  return HECMW_ETYPE_PYR1;
49  return HECMW_ETYPE_PYR2;
51  return HECMW_ETYPE_MST1;
53  return HECMW_ETYPE_MST2;
55  return HECMW_ETYPE_MSQ1;
57  return HECMW_ETYPE_MSQ2;
59  return HECMW_ETYPE_JTB1;
61  return HECMW_ETYPE_SPGDPT1;
63  return HECMW_ETYPE_JTT1;
65  return HECMW_ETYPE_JTT2;
67  return HECMW_ETYPE_JTQ1;
69  return HECMW_ETYPE_JTQ2;
71  return HECMW_ETYPE_BEM1;
73  return HECMW_ETYPE_BEM2;
75  return HECMW_ETYPE_BEM3; /* mixed beam-341*/
77  return HECMW_ETYPE_SHT1;
79  return HECMW_ETYPE_SHT2;
81  return HECMW_ETYPE_SHQ1;
83  return HECMW_ETYPE_SHQ2;
85  return HECMW_ETYPE_SHQ3;
87  return HECMW_ETYPE_SHT6; /* mixed shell-solid */
89  return HECMW_ETYPE_SHQ8;
91  return HECMW_ETYPE_LN11;
93  return HECMW_ETYPE_LN12;
95  return HECMW_ETYPE_LN13;
97  return HECMW_ETYPE_LN14;
99  return HECMW_ETYPE_LN15;
101  return HECMW_ETYPE_LN16;
103  return HECMW_ETYPE_LN21;
105  return HECMW_ETYPE_LN22;
107  return HECMW_ETYPE_LN23;
109  return HECMW_ETYPE_LN24;
111  return HECMW_ETYPE_LN25;
113  return HECMW_ETYPE_LN26;
115  return HECMW_ETYPE_LN31;
117  return HECMW_ETYPE_LN32;
119  return HECMW_ETYPE_LN33;
121  return HECMW_ETYPE_LN34;
123  return HECMW_ETYPE_LN35;
125  return HECMW_ETYPE_LN36;
127  return HECMW_ETYPE_LN41;
129  return HECMW_ETYPE_LN41;
131  return HECMW_ETYPE_LN43;
133  return HECMW_ETYPE_LN44;
135  return HECMW_ETYPE_LN45;
137  return HECMW_ETYPE_LN46;
139  return HECMW_ETYPE_LN51;
141  return HECMW_ETYPE_LN52;
143  return HECMW_ETYPE_LN53;
145  return HECMW_ETYPE_LN54;
147  return HECMW_ETYPE_LN55;
149  return HECMW_ETYPE_LN56;
151  return HECMW_ETYPE_LN61;
153  return HECMW_ETYPE_LN62;
155  return HECMW_ETYPE_LN63;
157  return HECMW_ETYPE_LN64;
159  return HECMW_ETYPE_LN65;
161  return HECMW_ETYPE_LN66;
163  return HECMW_ETYPE_PTT1;
165  return HECMW_ETYPE_PTT2;
167  return HECMW_ETYPE_PTQ1;
169  return HECMW_ETYPE_PTQ2;
170  default:
171  return -1;
172  }
173 
174  return -1;
175 }
176 
177 extern int HECMW_get_etype_HECMW2UTIL(int etype) {
178  switch (etype) {
179  case HECMW_ETYPE_ROD1:
180  return HECMW_MESH_ETYPE_ROD1;
181  case HECMW_ETYPE_ROD2:
182  return HECMW_MESH_ETYPE_ROD2;
183  case HECMW_ETYPE_TRI1:
184  return HECMW_MESH_ETYPE_TRI1;
185  case HECMW_ETYPE_TRI2:
186  return HECMW_MESH_ETYPE_TRI2;
187  case HECMW_ETYPE_TRI22:
188  return HECMW_MESH_ETYPE_TRI22;
189  case HECMW_ETYPE_QUA1:
190  return HECMW_MESH_ETYPE_QUA1;
191  case HECMW_ETYPE_QUA2:
192  return HECMW_MESH_ETYPE_QUA2;
193  case HECMW_ETYPE_ROD31:
194  return HECMW_MESH_ETYPE_ROD31;
195  case HECMW_ETYPE_TET1:
196  return HECMW_MESH_ETYPE_TET1;
197  case HECMW_ETYPE_TET1_4:
199  case HECMW_ETYPE_TET2:
200  return HECMW_MESH_ETYPE_TET2;
201  case HECMW_ETYPE_TET22:
202  return HECMW_MESH_ETYPE_TET22;
203  case HECMW_ETYPE_PRI1:
204  return HECMW_MESH_ETYPE_PRI1;
205  case HECMW_ETYPE_PRI2:
206  return HECMW_MESH_ETYPE_PRI2;
207  case HECMW_ETYPE_HEX1:
208  return HECMW_MESH_ETYPE_HEX1;
209  case HECMW_ETYPE_HEX1_4:
211  case HECMW_ETYPE_HEX2:
212  return HECMW_MESH_ETYPE_HEX2;
213  case HECMW_ETYPE_PYR1:
214  return HECMW_MESH_ETYPE_PYR1;
215  case HECMW_ETYPE_PYR2:
216  return HECMW_MESH_ETYPE_PYR2;
217  case HECMW_ETYPE_MST1:
218  return HECMW_MESH_ETYPE_MST1;
219  case HECMW_ETYPE_MST2:
220  return HECMW_MESH_ETYPE_MST2;
221  case HECMW_ETYPE_MSQ1:
222  return HECMW_MESH_ETYPE_MSQ1;
223  case HECMW_ETYPE_MSQ2:
224  return HECMW_MESH_ETYPE_MSQ2;
225  case HECMW_ETYPE_JTB1:
226  return HECMW_MESH_ETYPE_JTB1;
227  case HECMW_ETYPE_SPGDPT1:
229  case HECMW_ETYPE_JTT1:
230  return HECMW_MESH_ETYPE_JTT1;
231  case HECMW_ETYPE_JTT2:
232  return HECMW_MESH_ETYPE_JTT2;
233  case HECMW_ETYPE_JTQ1:
234  return HECMW_MESH_ETYPE_JTQ1;
235  case HECMW_ETYPE_JTQ2:
236  return HECMW_MESH_ETYPE_JTQ2;
237  case HECMW_ETYPE_BEM1:
238  return HECMW_MESH_ETYPE_BEM1;
239  case HECMW_ETYPE_BEM2:
240  return HECMW_MESH_ETYPE_BEM2;
241  case HECMW_ETYPE_BEM3:
242  return HECMW_MESH_ETYPE_BEM3; /* mixed beam-341*/
243  case HECMW_ETYPE_SHT1:
244  return HECMW_MESH_ETYPE_SHT1;
245  case HECMW_ETYPE_SHT2:
246  return HECMW_MESH_ETYPE_SHT2;
247  case HECMW_ETYPE_SHQ1:
248  return HECMW_MESH_ETYPE_SHQ1;
249  case HECMW_ETYPE_SHQ2:
250  return HECMW_MESH_ETYPE_SHQ2;
251  case HECMW_ETYPE_SHQ3:
252  return HECMW_MESH_ETYPE_SHQ3;
253  case HECMW_ETYPE_SHT6:
254  return HECMW_MESH_ETYPE_SHT6; /* mixed shell-solid */
255  case HECMW_ETYPE_SHQ8:
256  return HECMW_MESH_ETYPE_SHQ8;
257  case HECMW_ETYPE_LN11:
258  return HECMW_MESH_ETYPE_LN11;
259  case HECMW_ETYPE_LN12:
260  return HECMW_MESH_ETYPE_LN12;
261  case HECMW_ETYPE_LN13:
262  return HECMW_MESH_ETYPE_LN13;
263  case HECMW_ETYPE_LN14:
264  return HECMW_MESH_ETYPE_LN14;
265  case HECMW_ETYPE_LN15:
266  return HECMW_MESH_ETYPE_LN15;
267  case HECMW_ETYPE_LN16:
268  return HECMW_MESH_ETYPE_LN16;
269  case HECMW_ETYPE_LN21:
270  return HECMW_MESH_ETYPE_LN21;
271  case HECMW_ETYPE_LN22:
272  return HECMW_MESH_ETYPE_LN22;
273  case HECMW_ETYPE_LN23:
274  return HECMW_MESH_ETYPE_LN23;
275  case HECMW_ETYPE_LN24:
276  return HECMW_MESH_ETYPE_LN24;
277  case HECMW_ETYPE_LN25:
278  return HECMW_MESH_ETYPE_LN25;
279  case HECMW_ETYPE_LN26:
280  return HECMW_MESH_ETYPE_LN26;
281  case HECMW_ETYPE_LN31:
282  return HECMW_MESH_ETYPE_LN31;
283  case HECMW_ETYPE_LN32:
284  return HECMW_MESH_ETYPE_LN32;
285  case HECMW_ETYPE_LN33:
286  return HECMW_MESH_ETYPE_LN33;
287  case HECMW_ETYPE_LN34:
288  return HECMW_MESH_ETYPE_LN34;
289  case HECMW_ETYPE_LN35:
290  return HECMW_MESH_ETYPE_LN35;
291  case HECMW_ETYPE_LN36:
292  return HECMW_MESH_ETYPE_LN36;
293  case HECMW_ETYPE_LN41:
294  return HECMW_MESH_ETYPE_LN41;
295  case HECMW_ETYPE_LN42:
296  return HECMW_MESH_ETYPE_LN41;
297  case HECMW_ETYPE_LN43:
298  return HECMW_MESH_ETYPE_LN43;
299  case HECMW_ETYPE_LN44:
300  return HECMW_MESH_ETYPE_LN44;
301  case HECMW_ETYPE_LN45:
302  return HECMW_MESH_ETYPE_LN45;
303  case HECMW_ETYPE_LN46:
304  return HECMW_MESH_ETYPE_LN46;
305  case HECMW_ETYPE_LN51:
306  return HECMW_MESH_ETYPE_LN51;
307  case HECMW_ETYPE_LN52:
308  return HECMW_MESH_ETYPE_LN52;
309  case HECMW_ETYPE_LN53:
310  return HECMW_MESH_ETYPE_LN53;
311  case HECMW_ETYPE_LN54:
312  return HECMW_MESH_ETYPE_LN54;
313  case HECMW_ETYPE_LN55:
314  return HECMW_MESH_ETYPE_LN55;
315  case HECMW_ETYPE_LN56:
316  return HECMW_MESH_ETYPE_LN56;
317  case HECMW_ETYPE_LN61:
318  return HECMW_MESH_ETYPE_LN61;
319  case HECMW_ETYPE_LN62:
320  return HECMW_MESH_ETYPE_LN62;
321  case HECMW_ETYPE_LN63:
322  return HECMW_MESH_ETYPE_LN63;
323  case HECMW_ETYPE_LN64:
324  return HECMW_MESH_ETYPE_LN64;
325  case HECMW_ETYPE_LN65:
326  return HECMW_MESH_ETYPE_LN65;
327  case HECMW_ETYPE_LN66:
328  return HECMW_MESH_ETYPE_LN66;
329  case HECMW_ETYPE_PTT1:
330  return HECMW_MESH_ETYPE_PTT1;
331  case HECMW_ETYPE_PTT2:
332  return HECMW_MESH_ETYPE_PTT2;
333  case HECMW_ETYPE_PTQ1:
334  return HECMW_MESH_ETYPE_PTQ1;
335  case HECMW_ETYPE_PTQ2:
336  return HECMW_MESH_ETYPE_PTQ2;
337  default:
338  return -1;
339  }
340 
341  return -1;
342 }
343 
344 extern int HECMW_get_etype_GeoFEM2HECMW(int etype) {
345  switch (etype) {
347  return HECMW_ETYPE_ROD1;
349  return HECMW_ETYPE_ROD2;
351  return HECMW_ETYPE_TRI1;
353  return HECMW_ETYPE_TRI2;
355  return HECMW_ETYPE_QUA1;
357  return HECMW_ETYPE_QUA2;
359  return HECMW_ETYPE_TET1;
361  return HECMW_ETYPE_TET1_4;
363  return HECMW_ETYPE_TET2;
365  return HECMW_ETYPE_PRI1;
367  return HECMW_ETYPE_PRI2;
369  return HECMW_ETYPE_HEX1;
371  return HECMW_ETYPE_HEX1_4;
373  return HECMW_ETYPE_HEX2;
375  return HECMW_ETYPE_MST1;
377  return HECMW_ETYPE_MST2;
379  return HECMW_ETYPE_MSQ1;
381  return HECMW_ETYPE_MSQ2;
383  return HECMW_ETYPE_JTB1;
385  return HECMW_ETYPE_JTT1;
387  return HECMW_ETYPE_JTT2;
389  return HECMW_ETYPE_JTQ1;
391  return HECMW_ETYPE_JTQ2;
393  return HECMW_ETYPE_BEM1;
395  return HECMW_ETYPE_BEM2;
397  return HECMW_ETYPE_BEM3;
399  return HECMW_ETYPE_SHT1;
401  return HECMW_ETYPE_SHT2;
403  return HECMW_ETYPE_SHQ1;
405  return HECMW_ETYPE_SHQ2;
406  default:
407  return -1;
408  }
409 
410  return -1;
411 }
412 
413 extern int HECMW_get_max_node(int etype) {
414  switch (etype) {
415  case HECMW_ETYPE_ROD1:
416  return HECMW_MAX_NODE_ROD1;
417  case HECMW_ETYPE_ROD2:
418  return HECMW_MAX_NODE_ROD2;
419  case HECMW_ETYPE_TRI1:
420  return HECMW_MAX_NODE_TRI1;
421  case HECMW_ETYPE_TRI2:
422  return HECMW_MAX_NODE_TRI2;
423  case HECMW_ETYPE_TRI22:
424  return HECMW_MAX_NODE_TRI2;
425  case HECMW_ETYPE_QUA1:
426  return HECMW_MAX_NODE_QUA1;
427  case HECMW_ETYPE_QUA2:
428  return HECMW_MAX_NODE_QUA2;
429  case HECMW_ETYPE_ROD31:
430  return HECMW_MAX_NODE_ROD31;
431  case HECMW_ETYPE_TET1:
432  return HECMW_MAX_NODE_TET1;
433  case HECMW_ETYPE_TET1_4:
434  return HECMW_MAX_NODE_TET1_4;
435  case HECMW_ETYPE_TET2:
436  return HECMW_MAX_NODE_TET2;
437  case HECMW_ETYPE_TET22:
438  return HECMW_MAX_NODE_TET2;
439  case HECMW_ETYPE_PRI1:
440  return HECMW_MAX_NODE_PRI1;
441  case HECMW_ETYPE_PRI2:
442  return HECMW_MAX_NODE_PRI2;
443  case HECMW_ETYPE_HEX1:
444  return HECMW_MAX_NODE_HEX1;
445  case HECMW_ETYPE_HEX1_4:
446  return HECMW_MAX_NODE_HEX1_4;
447  case HECMW_ETYPE_HEX2:
448  return HECMW_MAX_NODE_HEX2;
449  case HECMW_ETYPE_PYR1:
450  return HECMW_MAX_NODE_PYR1;
451  case HECMW_ETYPE_PYR2:
452  return HECMW_MAX_NODE_PYR2;
453  case HECMW_ETYPE_MST1:
454  return HECMW_MAX_NODE_MST1;
455  case HECMW_ETYPE_MST2:
456  return HECMW_MAX_NODE_MST2;
457  case HECMW_ETYPE_MSQ1:
458  return HECMW_MAX_NODE_MSQ1;
459  case HECMW_ETYPE_MSQ2:
460  return HECMW_MAX_NODE_MSQ2;
461  case HECMW_ETYPE_JTB1:
462  return HECMW_MAX_NODE_JTB1;
463  case HECMW_ETYPE_SPGDPT1:
464  return HECMW_MAX_NODE_SPGDPT1;
465  case HECMW_ETYPE_JTT1:
466  return HECMW_MAX_NODE_JTT1;
467  case HECMW_ETYPE_JTT2:
468  return HECMW_MAX_NODE_JTT2;
469  case HECMW_ETYPE_JTQ1:
470  return HECMW_MAX_NODE_JTQ1;
471  case HECMW_ETYPE_JTQ2:
472  return HECMW_MAX_NODE_JTQ2;
473  case HECMW_ETYPE_BEM1:
474  return HECMW_MAX_NODE_BEM1;
475  case HECMW_ETYPE_BEM2:
476  return HECMW_MAX_NODE_BEM2;
477  case HECMW_ETYPE_BEM3:
478  return HECMW_MAX_NODE_BEM3; /* mixed beam-341*/
479  case HECMW_ETYPE_SHT1:
480  return HECMW_MAX_NODE_SHT1;
481  case HECMW_ETYPE_SHT2:
482  return HECMW_MAX_NODE_SHT2;
483  case HECMW_ETYPE_SHQ1:
484  return HECMW_MAX_NODE_SHQ1;
485  case HECMW_ETYPE_SHQ2:
486  return HECMW_MAX_NODE_SHQ2;
487  case HECMW_ETYPE_SHQ3:
488  return HECMW_MAX_NODE_SHQ3;
489  case HECMW_ETYPE_SHT6:
490  return HECMW_MAX_NODE_SHT6; /* mixed shell-solid */
491  case HECMW_ETYPE_SHQ8:
492  return HECMW_MAX_NODE_SHQ8;
493  case HECMW_ETYPE_LN11:
494  return HECMW_MAX_NODE_LN11;
495  case HECMW_ETYPE_LN12:
496  return HECMW_MAX_NODE_LN12;
497  case HECMW_ETYPE_LN13:
498  return HECMW_MAX_NODE_LN13;
499  case HECMW_ETYPE_LN14:
500  return HECMW_MAX_NODE_LN14;
501  case HECMW_ETYPE_LN15:
502  return HECMW_MAX_NODE_LN15;
503  case HECMW_ETYPE_LN16:
504  return HECMW_MAX_NODE_LN16;
505  case HECMW_ETYPE_LN21:
506  return HECMW_MAX_NODE_LN21;
507  case HECMW_ETYPE_LN22:
508  return HECMW_MAX_NODE_LN22;
509  case HECMW_ETYPE_LN23:
510  return HECMW_MAX_NODE_LN23;
511  case HECMW_ETYPE_LN24:
512  return HECMW_MAX_NODE_LN24;
513  case HECMW_ETYPE_LN25:
514  return HECMW_MAX_NODE_LN25;
515  case HECMW_ETYPE_LN26:
516  return HECMW_MAX_NODE_LN26;
517  case HECMW_ETYPE_LN31:
518  return HECMW_MAX_NODE_LN31;
519  case HECMW_ETYPE_LN32:
520  return HECMW_MAX_NODE_LN32;
521  case HECMW_ETYPE_LN33:
522  return HECMW_MAX_NODE_LN33;
523  case HECMW_ETYPE_LN34:
524  return HECMW_MAX_NODE_LN34;
525  case HECMW_ETYPE_LN35:
526  return HECMW_MAX_NODE_LN35;
527  case HECMW_ETYPE_LN36:
528  return HECMW_MAX_NODE_LN36;
529  case HECMW_ETYPE_LN41:
530  return HECMW_MAX_NODE_LN41;
531  case HECMW_ETYPE_LN42:
532  return HECMW_MAX_NODE_LN42;
533  case HECMW_ETYPE_LN43:
534  return HECMW_MAX_NODE_LN43;
535  case HECMW_ETYPE_LN44:
536  return HECMW_MAX_NODE_LN44;
537  case HECMW_ETYPE_LN45:
538  return HECMW_MAX_NODE_LN45;
539  case HECMW_ETYPE_LN46:
540  return HECMW_MAX_NODE_LN46;
541  case HECMW_ETYPE_LN51:
542  return HECMW_MAX_NODE_LN51;
543  case HECMW_ETYPE_LN52:
544  return HECMW_MAX_NODE_LN52;
545  case HECMW_ETYPE_LN53:
546  return HECMW_MAX_NODE_LN53;
547  case HECMW_ETYPE_LN54:
548  return HECMW_MAX_NODE_LN54;
549  case HECMW_ETYPE_LN55:
550  return HECMW_MAX_NODE_LN55;
551  case HECMW_ETYPE_LN56:
552  return HECMW_MAX_NODE_LN56;
553  case HECMW_ETYPE_LN61:
554  return HECMW_MAX_NODE_LN61;
555  case HECMW_ETYPE_LN62:
556  return HECMW_MAX_NODE_LN62;
557  case HECMW_ETYPE_LN63:
558  return HECMW_MAX_NODE_LN63;
559  case HECMW_ETYPE_LN64:
560  return HECMW_MAX_NODE_LN64;
561  case HECMW_ETYPE_LN65:
562  return HECMW_MAX_NODE_LN65;
563  case HECMW_ETYPE_LN66:
564  return HECMW_MAX_NODE_LN66;
565  case HECMW_ETYPE_PTT1:
566  return HECMW_MAX_NODE_PTT1;
567  case HECMW_ETYPE_PTT2:
568  return HECMW_MAX_NODE_PTT2;
569  case HECMW_ETYPE_PTQ1:
570  return HECMW_MAX_NODE_PTQ1;
571  case HECMW_ETYPE_PTQ2:
572  return HECMW_MAX_NODE_PTQ2;
573  default:
574  return -1;
575  }
576 
577  return -1;
578 }
579 
580 extern int HECMW_get_max_edge(int etype) {
581  switch (etype) {
582  case HECMW_ETYPE_ROD1:
583  return HECMW_MAX_EDGE_ROD1;
584  case HECMW_ETYPE_ROD2:
585  return HECMW_MAX_EDGE_ROD2;
586  case HECMW_ETYPE_TRI1:
587  return HECMW_MAX_EDGE_TRI1;
588  case HECMW_ETYPE_TRI2:
589  return HECMW_MAX_EDGE_TRI2;
590  case HECMW_ETYPE_TRI22:
591  return HECMW_MAX_EDGE_TRI2;
592  case HECMW_ETYPE_QUA1:
593  return HECMW_MAX_EDGE_QUA1;
594  case HECMW_ETYPE_QUA2:
595  return HECMW_MAX_EDGE_QUA2;
596  case HECMW_ETYPE_TET1:
597  return HECMW_MAX_EDGE_TET1;
598  case HECMW_ETYPE_TET1_4:
599  return HECMW_MAX_EDGE_TET1_4;
600  case HECMW_ETYPE_TET2:
601  return HECMW_MAX_EDGE_TET2;
602  case HECMW_ETYPE_TET22:
603  return HECMW_MAX_EDGE_TET2;
604  case HECMW_ETYPE_PRI1:
605  return HECMW_MAX_EDGE_PRI1;
606  case HECMW_ETYPE_PRI2:
607  return HECMW_MAX_EDGE_PRI2;
608  case HECMW_ETYPE_HEX1:
609  return HECMW_MAX_EDGE_HEX1;
610  case HECMW_ETYPE_HEX1_4:
611  return HECMW_MAX_EDGE_HEX1_4;
612  case HECMW_ETYPE_HEX2:
613  return HECMW_MAX_EDGE_HEX2;
614  case HECMW_ETYPE_PYR1:
615  return HECMW_MAX_EDGE_PYR1;
616  case HECMW_ETYPE_PYR2:
617  return HECMW_MAX_EDGE_PYR2;
618  case HECMW_ETYPE_MST1:
619  return HECMW_MAX_EDGE_MST1;
620  case HECMW_ETYPE_MST2:
621  return HECMW_MAX_EDGE_MST2;
622  case HECMW_ETYPE_MSQ1:
623  return HECMW_MAX_EDGE_MSQ1;
624  case HECMW_ETYPE_MSQ2:
625  return HECMW_MAX_EDGE_MSQ2;
626  case HECMW_ETYPE_JTB1:
627  return HECMW_MAX_EDGE_JTB1;
628  case HECMW_ETYPE_SPGDPT1:
629  return HECMW_MAX_EDGE_SPGDPT1;
630  case HECMW_ETYPE_JTT1:
631  return HECMW_MAX_EDGE_JTT1;
632  case HECMW_ETYPE_JTT2:
633  return HECMW_MAX_EDGE_JTT2;
634  case HECMW_ETYPE_JTQ1:
635  return HECMW_MAX_EDGE_JTQ1;
636  case HECMW_ETYPE_JTQ2:
637  return HECMW_MAX_EDGE_JTQ2;
638  case HECMW_ETYPE_BEM1:
639  return HECMW_MAX_EDGE_BEM1;
640  case HECMW_ETYPE_BEM2:
641  return HECMW_MAX_EDGE_BEM2;
642  case HECMW_ETYPE_BEM3:
643  return HECMW_MAX_EDGE_BEM3; /* mixed beam-341*/
644  case HECMW_ETYPE_SHT1:
645  return HECMW_MAX_EDGE_SHT1;
646  case HECMW_ETYPE_SHT2:
647  return HECMW_MAX_EDGE_SHT2;
648  case HECMW_ETYPE_SHQ1:
649  return HECMW_MAX_EDGE_SHQ1;
650  case HECMW_ETYPE_SHQ2:
651  return HECMW_MAX_EDGE_SHQ2;
652  case HECMW_ETYPE_SHT6:
653  return HECMW_MAX_EDGE_SHT6; /* mixed shell-solid */
654  case HECMW_ETYPE_SHQ8:
655  return HECMW_MAX_EDGE_SHQ8;
656  case HECMW_ETYPE_LN11:
657  return HECMW_MAX_EDGE_LN11;
658  case HECMW_ETYPE_LN12:
659  return HECMW_MAX_EDGE_LN12;
660  case HECMW_ETYPE_LN13:
661  return HECMW_MAX_EDGE_LN13;
662  case HECMW_ETYPE_LN14:
663  return HECMW_MAX_EDGE_LN14;
664  case HECMW_ETYPE_LN15:
665  return HECMW_MAX_EDGE_LN15;
666  case HECMW_ETYPE_LN16:
667  return HECMW_MAX_EDGE_LN16;
668  case HECMW_ETYPE_LN21:
669  return HECMW_MAX_EDGE_LN21;
670  case HECMW_ETYPE_LN22:
671  return HECMW_MAX_EDGE_LN22;
672  case HECMW_ETYPE_LN23:
673  return HECMW_MAX_EDGE_LN23;
674  case HECMW_ETYPE_LN24:
675  return HECMW_MAX_EDGE_LN24;
676  case HECMW_ETYPE_LN25:
677  return HECMW_MAX_EDGE_LN25;
678  case HECMW_ETYPE_LN26:
679  return HECMW_MAX_EDGE_LN26;
680  case HECMW_ETYPE_LN31:
681  return HECMW_MAX_EDGE_LN31;
682  case HECMW_ETYPE_LN32:
683  return HECMW_MAX_EDGE_LN32;
684  case HECMW_ETYPE_LN33:
685  return HECMW_MAX_EDGE_LN33;
686  case HECMW_ETYPE_LN34:
687  return HECMW_MAX_EDGE_LN34;
688  case HECMW_ETYPE_LN35:
689  return HECMW_MAX_EDGE_LN35;
690  case HECMW_ETYPE_LN36:
691  return HECMW_MAX_EDGE_LN36;
692  case HECMW_ETYPE_LN41:
693  return HECMW_MAX_EDGE_LN41;
694  case HECMW_ETYPE_LN42:
695  return HECMW_MAX_EDGE_LN42;
696  case HECMW_ETYPE_LN43:
697  return HECMW_MAX_EDGE_LN43;
698  case HECMW_ETYPE_LN44:
699  return HECMW_MAX_EDGE_LN44;
700  case HECMW_ETYPE_LN45:
701  return HECMW_MAX_EDGE_LN45;
702  case HECMW_ETYPE_LN46:
703  return HECMW_MAX_EDGE_LN46;
704  case HECMW_ETYPE_LN51:
705  return HECMW_MAX_EDGE_LN51;
706  case HECMW_ETYPE_LN52:
707  return HECMW_MAX_EDGE_LN52;
708  case HECMW_ETYPE_LN53:
709  return HECMW_MAX_EDGE_LN53;
710  case HECMW_ETYPE_LN54:
711  return HECMW_MAX_EDGE_LN54;
712  case HECMW_ETYPE_LN55:
713  return HECMW_MAX_EDGE_LN55;
714  case HECMW_ETYPE_LN56:
715  return HECMW_MAX_EDGE_LN56;
716  case HECMW_ETYPE_LN61:
717  return HECMW_MAX_EDGE_LN61;
718  case HECMW_ETYPE_LN62:
719  return HECMW_MAX_EDGE_LN62;
720  case HECMW_ETYPE_LN63:
721  return HECMW_MAX_EDGE_LN63;
722  case HECMW_ETYPE_LN64:
723  return HECMW_MAX_EDGE_LN64;
724  case HECMW_ETYPE_LN65:
725  return HECMW_MAX_EDGE_LN65;
726  case HECMW_ETYPE_LN66:
727  return HECMW_MAX_EDGE_LN66;
728  case HECMW_ETYPE_PTT1:
729  return HECMW_MAX_EDGE_PTT1;
730  case HECMW_ETYPE_PTT2:
731  return HECMW_MAX_EDGE_PTT2;
732  case HECMW_ETYPE_PTQ1:
733  return HECMW_MAX_EDGE_PTQ1;
734  case HECMW_ETYPE_PTQ2:
735  return HECMW_MAX_EDGE_PTQ2;
736  default:
737  return -1;
738  }
739 
740  return -1;
741 }
742 
743 extern int HECMW_get_max_surf(int etype) {
744  switch (etype) {
745  case HECMW_ETYPE_ROD1:
746  return HECMW_MAX_SURF_ROD1;
747  case HECMW_ETYPE_ROD2:
748  return HECMW_MAX_SURF_ROD2;
749  case HECMW_ETYPE_TRI1:
750  return HECMW_MAX_SURF_TRI1;
751  case HECMW_ETYPE_TRI2:
752  return HECMW_MAX_SURF_TRI2;
753  case HECMW_ETYPE_TRI22:
754  return HECMW_MAX_SURF_TRI2;
755  case HECMW_ETYPE_QUA1:
756  return HECMW_MAX_SURF_QUA1;
757  case HECMW_ETYPE_QUA2:
758  return HECMW_MAX_SURF_QUA2;
759  case HECMW_ETYPE_TET1:
760  return HECMW_MAX_SURF_TET1;
761  case HECMW_ETYPE_TET1_4:
762  return HECMW_MAX_SURF_TET1_4;
763  case HECMW_ETYPE_TET2:
764  return HECMW_MAX_SURF_TET2;
765  case HECMW_ETYPE_TET22:
766  return HECMW_MAX_SURF_TET2;
767  case HECMW_ETYPE_PRI1:
768  return HECMW_MAX_SURF_PRI1;
769  case HECMW_ETYPE_PRI2:
770  return HECMW_MAX_SURF_PRI2;
771  case HECMW_ETYPE_HEX1:
772  return HECMW_MAX_SURF_HEX1;
773  case HECMW_ETYPE_HEX1_4:
774  return HECMW_MAX_SURF_HEX1_4;
775  case HECMW_ETYPE_HEX2:
776  return HECMW_MAX_SURF_HEX2;
777  case HECMW_ETYPE_PYR1:
778  return HECMW_MAX_SURF_PYR1;
779  case HECMW_ETYPE_PYR2:
780  return HECMW_MAX_SURF_PYR2;
781  case HECMW_ETYPE_MST1:
782  return HECMW_MAX_SURF_MST1;
783  case HECMW_ETYPE_MST2:
784  return HECMW_MAX_SURF_MST2;
785  case HECMW_ETYPE_MSQ1:
786  return HECMW_MAX_SURF_MSQ1;
787  case HECMW_ETYPE_MSQ2:
788  return HECMW_MAX_SURF_MSQ2;
789  case HECMW_ETYPE_JTB1:
790  return HECMW_MAX_SURF_JTB1;
791  case HECMW_ETYPE_SPGDPT1:
792  return HECMW_MAX_SURF_SPGDPT1;
793  case HECMW_ETYPE_JTT1:
794  return HECMW_MAX_SURF_JTT1;
795  case HECMW_ETYPE_JTT2:
796  return HECMW_MAX_SURF_JTT2;
797  case HECMW_ETYPE_JTQ1:
798  return HECMW_MAX_SURF_JTQ1;
799  case HECMW_ETYPE_JTQ2:
800  return HECMW_MAX_SURF_JTQ2;
801  case HECMW_ETYPE_BEM1:
802  return HECMW_MAX_SURF_BEM1;
803  case HECMW_ETYPE_BEM2:
804  return HECMW_MAX_SURF_BEM2;
805  case HECMW_ETYPE_BEM3:
806  return HECMW_MAX_SURF_BEM3; /* mixed beam-341*/
807  case HECMW_ETYPE_SHT1:
808  return HECMW_MAX_SURF_SHT1;
809  case HECMW_ETYPE_SHT2:
810  return HECMW_MAX_SURF_SHT2;
811  case HECMW_ETYPE_SHQ1:
812  return HECMW_MAX_SURF_SHQ1;
813  case HECMW_ETYPE_SHQ2:
814  return HECMW_MAX_SURF_SHQ2;
815  case HECMW_ETYPE_SHT6:
816  return HECMW_MAX_SURF_SHT6; /* mixed shell-solid */
817  case HECMW_ETYPE_SHQ8:
818  return HECMW_MAX_SURF_SHQ8;
819  case HECMW_ETYPE_LN11:
820  return HECMW_MAX_SURF_LN11;
821  case HECMW_ETYPE_LN12:
822  return HECMW_MAX_SURF_LN12;
823  case HECMW_ETYPE_LN13:
824  return HECMW_MAX_SURF_LN13;
825  case HECMW_ETYPE_LN14:
826  return HECMW_MAX_SURF_LN14;
827  case HECMW_ETYPE_LN15:
828  return HECMW_MAX_SURF_LN15;
829  case HECMW_ETYPE_LN16:
830  return HECMW_MAX_SURF_LN16;
831  case HECMW_ETYPE_LN21:
832  return HECMW_MAX_SURF_LN21;
833  case HECMW_ETYPE_LN22:
834  return HECMW_MAX_SURF_LN22;
835  case HECMW_ETYPE_LN23:
836  return HECMW_MAX_SURF_LN23;
837  case HECMW_ETYPE_LN24:
838  return HECMW_MAX_SURF_LN24;
839  case HECMW_ETYPE_LN25:
840  return HECMW_MAX_SURF_LN25;
841  case HECMW_ETYPE_LN26:
842  return HECMW_MAX_SURF_LN26;
843  case HECMW_ETYPE_LN31:
844  return HECMW_MAX_SURF_LN31;
845  case HECMW_ETYPE_LN32:
846  return HECMW_MAX_SURF_LN32;
847  case HECMW_ETYPE_LN33:
848  return HECMW_MAX_SURF_LN33;
849  case HECMW_ETYPE_LN34:
850  return HECMW_MAX_SURF_LN34;
851  case HECMW_ETYPE_LN35:
852  return HECMW_MAX_SURF_LN35;
853  case HECMW_ETYPE_LN36:
854  return HECMW_MAX_SURF_LN36;
855  case HECMW_ETYPE_LN41:
856  return HECMW_MAX_SURF_LN41;
857  case HECMW_ETYPE_LN42:
858  return HECMW_MAX_SURF_LN42;
859  case HECMW_ETYPE_LN43:
860  return HECMW_MAX_SURF_LN43;
861  case HECMW_ETYPE_LN44:
862  return HECMW_MAX_SURF_LN44;
863  case HECMW_ETYPE_LN45:
864  return HECMW_MAX_SURF_LN45;
865  case HECMW_ETYPE_LN46:
866  return HECMW_MAX_SURF_LN46;
867  case HECMW_ETYPE_LN51:
868  return HECMW_MAX_SURF_LN51;
869  case HECMW_ETYPE_LN52:
870  return HECMW_MAX_SURF_LN52;
871  case HECMW_ETYPE_LN53:
872  return HECMW_MAX_SURF_LN53;
873  case HECMW_ETYPE_LN54:
874  return HECMW_MAX_SURF_LN54;
875  case HECMW_ETYPE_LN55:
876  return HECMW_MAX_SURF_LN55;
877  case HECMW_ETYPE_LN56:
878  return HECMW_MAX_SURF_LN56;
879  case HECMW_ETYPE_LN61:
880  return HECMW_MAX_SURF_LN61;
881  case HECMW_ETYPE_LN62:
882  return HECMW_MAX_SURF_LN62;
883  case HECMW_ETYPE_LN63:
884  return HECMW_MAX_SURF_LN63;
885  case HECMW_ETYPE_LN64:
886  return HECMW_MAX_SURF_LN64;
887  case HECMW_ETYPE_LN65:
888  return HECMW_MAX_SURF_LN65;
889  case HECMW_ETYPE_LN66:
890  return HECMW_MAX_SURF_LN66;
891  case HECMW_ETYPE_PTT1:
892  return HECMW_MAX_SURF_PTT1;
893  case HECMW_ETYPE_PTT2:
894  return HECMW_MAX_SURF_PTT2;
895  case HECMW_ETYPE_PTQ1:
896  return HECMW_MAX_SURF_PTQ1;
897  case HECMW_ETYPE_PTQ2:
898  return HECMW_MAX_SURF_PTQ2;
899  default:
900  return -1;
901  }
902 
903  return -1;
904 }
905 
906 extern int HECMW_get_max_tsuf(int etype) {
907  switch (etype) {
908  case HECMW_ETYPE_ROD1:
909  return HECMW_MAX_TSUF_ROD1;
910  case HECMW_ETYPE_ROD2:
911  return HECMW_MAX_TSUF_ROD2;
912  case HECMW_ETYPE_TRI1:
913  return HECMW_MAX_TSUF_TRI1;
914  case HECMW_ETYPE_TRI2:
915  return HECMW_MAX_TSUF_TRI2;
916  case HECMW_ETYPE_TRI22:
917  return HECMW_MAX_TSUF_TRI2;
918  case HECMW_ETYPE_QUA1:
919  return HECMW_MAX_TSUF_QUA1;
920  case HECMW_ETYPE_QUA2:
921  return HECMW_MAX_TSUF_QUA2;
922  case HECMW_ETYPE_TET1:
923  return HECMW_MAX_TSUF_TET1;
924  case HECMW_ETYPE_TET1_4:
925  return HECMW_MAX_TSUF_TET1_4;
926  case HECMW_ETYPE_TET2:
927  return HECMW_MAX_TSUF_TET2;
928  case HECMW_ETYPE_PRI1:
929  return HECMW_MAX_TSUF_PRI1;
930  case HECMW_ETYPE_PRI2:
931  return HECMW_MAX_TSUF_PRI2;
932  case HECMW_ETYPE_HEX1:
933  return HECMW_MAX_TSUF_HEX1;
934  case HECMW_ETYPE_HEX1_4:
935  return HECMW_MAX_TSUF_HEX1_4;
936  case HECMW_ETYPE_HEX2:
937  return HECMW_MAX_TSUF_HEX2;
938  case HECMW_ETYPE_PYR1:
939  return HECMW_MAX_TSUF_PYR1;
940  case HECMW_ETYPE_PYR2:
941  return HECMW_MAX_TSUF_PYR2;
942  case HECMW_ETYPE_MST1:
943  return HECMW_MAX_TSUF_MST1;
944  case HECMW_ETYPE_MST2:
945  return HECMW_MAX_TSUF_MST2;
946  case HECMW_ETYPE_MSQ1:
947  return HECMW_MAX_TSUF_MSQ1;
948  case HECMW_ETYPE_MSQ2:
949  return HECMW_MAX_TSUF_MSQ2;
950  case HECMW_ETYPE_JTB1:
951  return HECMW_MAX_TSUF_JTB1;
952  case HECMW_ETYPE_SPGDPT1:
953  return HECMW_MAX_TSUF_SPGDPT1;
954  case HECMW_ETYPE_JTT1:
955  return HECMW_MAX_TSUF_JTT1;
956  case HECMW_ETYPE_JTT2:
957  return HECMW_MAX_TSUF_JTT2;
958  case HECMW_ETYPE_JTQ1:
959  return HECMW_MAX_TSUF_JTQ1;
960  case HECMW_ETYPE_JTQ2:
961  return HECMW_MAX_TSUF_JTQ2;
962  case HECMW_ETYPE_BEM1:
963  return HECMW_MAX_TSUF_BEM1;
964  case HECMW_ETYPE_BEM2:
965  return HECMW_MAX_TSUF_BEM2;
966  case HECMW_ETYPE_BEM3:
967  return HECMW_MAX_TSUF_BEM3; /* mixed beam-341*/
968  case HECMW_ETYPE_SHT1:
969  return HECMW_MAX_TSUF_SHT1;
970  case HECMW_ETYPE_SHT2:
971  return HECMW_MAX_TSUF_SHT2;
972  case HECMW_ETYPE_SHQ1:
973  return HECMW_MAX_TSUF_SHQ1;
974  case HECMW_ETYPE_SHQ2:
975  return HECMW_MAX_TSUF_SHQ2;
976  case HECMW_ETYPE_SHT6:
977  return HECMW_MAX_TSUF_SHT6; /* mixed shell-solid */
978  case HECMW_ETYPE_SHQ8:
979  return HECMW_MAX_TSUF_SHQ8;
980  case HECMW_ETYPE_LN11:
981  return HECMW_MAX_TSUF_LN11;
982  case HECMW_ETYPE_LN12:
983  return HECMW_MAX_TSUF_LN12;
984  case HECMW_ETYPE_LN13:
985  return HECMW_MAX_TSUF_LN13;
986  case HECMW_ETYPE_LN14:
987  return HECMW_MAX_TSUF_LN14;
988  case HECMW_ETYPE_LN15:
989  return HECMW_MAX_TSUF_LN15;
990  case HECMW_ETYPE_LN16:
991  return HECMW_MAX_TSUF_LN16;
992  case HECMW_ETYPE_LN21:
993  return HECMW_MAX_TSUF_LN21;
994  case HECMW_ETYPE_LN22:
995  return HECMW_MAX_TSUF_LN22;
996  case HECMW_ETYPE_LN23:
997  return HECMW_MAX_TSUF_LN23;
998  case HECMW_ETYPE_LN24:
999  return HECMW_MAX_TSUF_LN24;
1000  case HECMW_ETYPE_LN25:
1001  return HECMW_MAX_TSUF_LN25;
1002  case HECMW_ETYPE_LN26:
1003  return HECMW_MAX_TSUF_LN26;
1004  case HECMW_ETYPE_LN31:
1005  return HECMW_MAX_TSUF_LN31;
1006  case HECMW_ETYPE_LN32:
1007  return HECMW_MAX_TSUF_LN32;
1008  case HECMW_ETYPE_LN33:
1009  return HECMW_MAX_TSUF_LN33;
1010  case HECMW_ETYPE_LN34:
1011  return HECMW_MAX_TSUF_LN34;
1012  case HECMW_ETYPE_LN35:
1013  return HECMW_MAX_TSUF_LN35;
1014  case HECMW_ETYPE_LN36:
1015  return HECMW_MAX_TSUF_LN36;
1016  case HECMW_ETYPE_LN41:
1017  return HECMW_MAX_TSUF_LN41;
1018  case HECMW_ETYPE_LN42:
1019  return HECMW_MAX_TSUF_LN42;
1020  case HECMW_ETYPE_LN43:
1021  return HECMW_MAX_TSUF_LN43;
1022  case HECMW_ETYPE_LN44:
1023  return HECMW_MAX_TSUF_LN44;
1024  case HECMW_ETYPE_LN45:
1025  return HECMW_MAX_TSUF_LN45;
1026  case HECMW_ETYPE_LN46:
1027  return HECMW_MAX_TSUF_LN46;
1028  case HECMW_ETYPE_LN51:
1029  return HECMW_MAX_TSUF_LN51;
1030  case HECMW_ETYPE_LN52:
1031  return HECMW_MAX_TSUF_LN52;
1032  case HECMW_ETYPE_LN53:
1033  return HECMW_MAX_TSUF_LN53;
1034  case HECMW_ETYPE_LN54:
1035  return HECMW_MAX_TSUF_LN54;
1036  case HECMW_ETYPE_LN55:
1037  return HECMW_MAX_TSUF_LN55;
1038  case HECMW_ETYPE_LN56:
1039  return HECMW_MAX_TSUF_LN56;
1040  case HECMW_ETYPE_LN61:
1041  return HECMW_MAX_TSUF_LN61;
1042  case HECMW_ETYPE_LN62:
1043  return HECMW_MAX_TSUF_LN62;
1044  case HECMW_ETYPE_LN63:
1045  return HECMW_MAX_TSUF_LN63;
1046  case HECMW_ETYPE_LN64:
1047  return HECMW_MAX_TSUF_LN64;
1048  case HECMW_ETYPE_LN65:
1049  return HECMW_MAX_TSUF_LN65;
1050  case HECMW_ETYPE_LN66:
1051  return HECMW_MAX_TSUF_LN66;
1052  case HECMW_ETYPE_PTT1:
1053  return HECMW_MAX_TSUF_PTT1;
1054  case HECMW_ETYPE_PTT2:
1055  return HECMW_MAX_TSUF_PTT2;
1056  case HECMW_ETYPE_PTQ1:
1057  return HECMW_MAX_TSUF_PTQ1;
1058  case HECMW_ETYPE_PTQ2:
1059  return HECMW_MAX_TSUF_PTQ2;
1060  default:
1061  return -1;
1062  }
1063 
1064  return -1;
1065 }
1066 
1067 extern int HECMW_get_max_qsuf(int etype) {
1068  switch (etype) {
1069  case HECMW_ETYPE_ROD1:
1070  return HECMW_MAX_QSUF_ROD1;
1071  case HECMW_ETYPE_ROD2:
1072  return HECMW_MAX_QSUF_ROD2;
1073  case HECMW_ETYPE_TRI1:
1074  return HECMW_MAX_QSUF_TRI1;
1075  case HECMW_ETYPE_TRI2:
1076  return HECMW_MAX_QSUF_TRI2;
1077  case HECMW_ETYPE_TRI22:
1078  return HECMW_MAX_QSUF_TRI2;
1079  case HECMW_ETYPE_QUA1:
1080  return HECMW_MAX_QSUF_QUA1;
1081  case HECMW_ETYPE_QUA2:
1082  return HECMW_MAX_QSUF_QUA2;
1083  case HECMW_ETYPE_TET1:
1084  return HECMW_MAX_QSUF_TET1;
1085  case HECMW_ETYPE_TET1_4:
1086  return HECMW_MAX_QSUF_TET1_4;
1087  case HECMW_ETYPE_TET2:
1088  return HECMW_MAX_QSUF_TET2;
1089  case HECMW_ETYPE_TET22:
1090  return HECMW_MAX_QSUF_TET2;
1091  case HECMW_ETYPE_PRI1:
1092  return HECMW_MAX_QSUF_PRI1;
1093  case HECMW_ETYPE_PRI2:
1094  return HECMW_MAX_QSUF_PRI2;
1095  case HECMW_ETYPE_HEX1:
1096  return HECMW_MAX_QSUF_HEX1;
1097  case HECMW_ETYPE_HEX1_4:
1098  return HECMW_MAX_QSUF_HEX1_4;
1099  case HECMW_ETYPE_HEX2:
1100  return HECMW_MAX_QSUF_HEX2;
1101  case HECMW_ETYPE_PYR1:
1102  return HECMW_MAX_QSUF_PYR1;
1103  case HECMW_ETYPE_PYR2:
1104  return HECMW_MAX_QSUF_PYR2;
1105  case HECMW_ETYPE_MST1:
1106  return HECMW_MAX_QSUF_MST1;
1107  case HECMW_ETYPE_MST2:
1108  return HECMW_MAX_QSUF_MST2;
1109  case HECMW_ETYPE_MSQ1:
1110  return HECMW_MAX_QSUF_MSQ1;
1111  case HECMW_ETYPE_MSQ2:
1112  return HECMW_MAX_QSUF_MSQ2;
1113  case HECMW_ETYPE_JTB1:
1114  return HECMW_MAX_QSUF_JTB1;
1115  case HECMW_ETYPE_SPGDPT1:
1116  return HECMW_MAX_QSUF_SPGDPT1;
1117  case HECMW_ETYPE_JTT1:
1118  return HECMW_MAX_QSUF_JTT1;
1119  case HECMW_ETYPE_JTT2:
1120  return HECMW_MAX_QSUF_JTT2;
1121  case HECMW_ETYPE_JTQ1:
1122  return HECMW_MAX_QSUF_JTQ1;
1123  case HECMW_ETYPE_JTQ2:
1124  return HECMW_MAX_QSUF_JTQ2;
1125  case HECMW_ETYPE_BEM1:
1126  return HECMW_MAX_QSUF_BEM1;
1127  case HECMW_ETYPE_BEM2:
1128  return HECMW_MAX_QSUF_BEM2;
1129  case HECMW_ETYPE_BEM3:
1130  return HECMW_MAX_QSUF_BEM3; /* mixed beam-341*/
1131  case HECMW_ETYPE_SHT1:
1132  return HECMW_MAX_QSUF_SHT1;
1133  case HECMW_ETYPE_SHT2:
1134  return HECMW_MAX_QSUF_SHT2;
1135  case HECMW_ETYPE_SHQ1:
1136  return HECMW_MAX_QSUF_SHQ1;
1137  case HECMW_ETYPE_SHQ2:
1138  return HECMW_MAX_QSUF_SHQ2;
1139  case HECMW_ETYPE_SHT6:
1140  return HECMW_MAX_QSUF_SHT6; /* mixed shell-solid */
1141  case HECMW_ETYPE_SHQ8:
1142  return HECMW_MAX_QSUF_SHQ8;
1143  case HECMW_ETYPE_LN11:
1144  return HECMW_MAX_QSUF_LN11;
1145  case HECMW_ETYPE_LN12:
1146  return HECMW_MAX_QSUF_LN12;
1147  case HECMW_ETYPE_LN13:
1148  return HECMW_MAX_QSUF_LN13;
1149  case HECMW_ETYPE_LN14:
1150  return HECMW_MAX_QSUF_LN14;
1151  case HECMW_ETYPE_LN15:
1152  return HECMW_MAX_QSUF_LN15;
1153  case HECMW_ETYPE_LN16:
1154  return HECMW_MAX_QSUF_LN16;
1155  case HECMW_ETYPE_LN21:
1156  return HECMW_MAX_QSUF_LN21;
1157  case HECMW_ETYPE_LN22:
1158  return HECMW_MAX_QSUF_LN22;
1159  case HECMW_ETYPE_LN23:
1160  return HECMW_MAX_QSUF_LN23;
1161  case HECMW_ETYPE_LN24:
1162  return HECMW_MAX_QSUF_LN24;
1163  case HECMW_ETYPE_LN25:
1164  return HECMW_MAX_QSUF_LN25;
1165  case HECMW_ETYPE_LN26:
1166  return HECMW_MAX_QSUF_LN26;
1167  case HECMW_ETYPE_LN31:
1168  return HECMW_MAX_QSUF_LN31;
1169  case HECMW_ETYPE_LN32:
1170  return HECMW_MAX_QSUF_LN32;
1171  case HECMW_ETYPE_LN33:
1172  return HECMW_MAX_QSUF_LN33;
1173  case HECMW_ETYPE_LN34:
1174  return HECMW_MAX_QSUF_LN34;
1175  case HECMW_ETYPE_LN35:
1176  return HECMW_MAX_QSUF_LN35;
1177  case HECMW_ETYPE_LN36:
1178  return HECMW_MAX_QSUF_LN36;
1179  case HECMW_ETYPE_LN41:
1180  return HECMW_MAX_QSUF_LN41;
1181  case HECMW_ETYPE_LN42:
1182  return HECMW_MAX_QSUF_LN42;
1183  case HECMW_ETYPE_LN43:
1184  return HECMW_MAX_QSUF_LN43;
1185  case HECMW_ETYPE_LN44:
1186  return HECMW_MAX_QSUF_LN44;
1187  case HECMW_ETYPE_LN45:
1188  return HECMW_MAX_QSUF_LN45;
1189  case HECMW_ETYPE_LN46:
1190  return HECMW_MAX_QSUF_LN46;
1191  case HECMW_ETYPE_LN51:
1192  return HECMW_MAX_QSUF_LN51;
1193  case HECMW_ETYPE_LN52:
1194  return HECMW_MAX_QSUF_LN52;
1195  case HECMW_ETYPE_LN53:
1196  return HECMW_MAX_QSUF_LN53;
1197  case HECMW_ETYPE_LN54:
1198  return HECMW_MAX_QSUF_LN54;
1199  case HECMW_ETYPE_LN55:
1200  return HECMW_MAX_QSUF_LN55;
1201  case HECMW_ETYPE_LN56:
1202  return HECMW_MAX_QSUF_LN56;
1203  case HECMW_ETYPE_LN61:
1204  return HECMW_MAX_QSUF_LN61;
1205  case HECMW_ETYPE_LN62:
1206  return HECMW_MAX_QSUF_LN62;
1207  case HECMW_ETYPE_LN63:
1208  return HECMW_MAX_QSUF_LN63;
1209  case HECMW_ETYPE_LN64:
1210  return HECMW_MAX_QSUF_LN64;
1211  case HECMW_ETYPE_LN65:
1212  return HECMW_MAX_QSUF_LN65;
1213  case HECMW_ETYPE_LN66:
1214  return HECMW_MAX_QSUF_LN66;
1215  case HECMW_ETYPE_PTT1:
1216  return HECMW_MAX_QSUF_PTT1;
1217  case HECMW_ETYPE_PTT2:
1218  return HECMW_MAX_QSUF_PTT2;
1219  case HECMW_ETYPE_PTQ1:
1220  return HECMW_MAX_QSUF_PTQ1;
1221  case HECMW_ETYPE_PTQ2:
1222  return HECMW_MAX_QSUF_PTQ2;
1223  default:
1224  return -1;
1225  }
1226 
1227  return -1;
1228 }
1229 
1230 extern char *HECMW_get_ucd_label(int etype) {
1231  switch (etype) {
1232  case HECMW_ETYPE_ROD1:
1233  return HECMW_UCD_LABEL_ROD1;
1234  case HECMW_ETYPE_ROD2:
1235  return HECMW_UCD_LABEL_ROD2;
1236  case HECMW_ETYPE_TRI1:
1237  return HECMW_UCD_LABEL_TRI1;
1238  case HECMW_ETYPE_TRI2:
1239  return HECMW_UCD_LABEL_TRI2;
1240  case HECMW_ETYPE_TRI22:
1241  return HECMW_UCD_LABEL_TRI2;
1242  case HECMW_ETYPE_QUA1:
1243  return HECMW_UCD_LABEL_QUA1;
1244  case HECMW_ETYPE_QUA2:
1245  return HECMW_UCD_LABEL_QUA2;
1246  case HECMW_ETYPE_ROD31:
1247  return HECMW_UCD_LABEL_ROD31;
1248  case HECMW_ETYPE_TET1:
1249  return HECMW_UCD_LABEL_TET1;
1250  case HECMW_ETYPE_TET1_4:
1251  return HECMW_UCD_LABEL_TET1_4;
1252  case HECMW_ETYPE_TET2:
1253  return HECMW_UCD_LABEL_TET2;
1254  case HECMW_ETYPE_TET22:
1255  return HECMW_UCD_LABEL_TET2;
1256  case HECMW_ETYPE_PRI1:
1257  return HECMW_UCD_LABEL_PRI1;
1258  case HECMW_ETYPE_PRI2:
1259  return HECMW_UCD_LABEL_PRI2;
1260  case HECMW_ETYPE_HEX1:
1261  return HECMW_UCD_LABEL_HEX1;
1262  case HECMW_ETYPE_HEX1_4:
1263  return HECMW_UCD_LABEL_HEX1_4;
1264  case HECMW_ETYPE_HEX2:
1265  return HECMW_UCD_LABEL_HEX2;
1266  case HECMW_ETYPE_PYR1:
1267  return HECMW_UCD_LABEL_PYR1;
1268  case HECMW_ETYPE_PYR2:
1269  return HECMW_UCD_LABEL_PYR2;
1270  case HECMW_ETYPE_MST1:
1271  return HECMW_UCD_LABEL_MST1;
1272  case HECMW_ETYPE_MST2:
1273  return HECMW_UCD_LABEL_MST2;
1274  case HECMW_ETYPE_MSQ1:
1275  return HECMW_UCD_LABEL_MSQ1;
1276  case HECMW_ETYPE_MSQ2:
1277  return HECMW_UCD_LABEL_MSQ2;
1278  case HECMW_ETYPE_JTB1:
1279  return HECMW_UCD_LABEL_JTB1;
1280  case HECMW_ETYPE_SPGDPT1:
1281  return HECMW_UCD_LABEL_SPGDPT1;
1282  case HECMW_ETYPE_JTT1:
1283  return HECMW_UCD_LABEL_JTT1;
1284  case HECMW_ETYPE_JTT2:
1285  return HECMW_UCD_LABEL_JTT2;
1286  case HECMW_ETYPE_JTQ1:
1287  return HECMW_UCD_LABEL_JTQ1;
1288  case HECMW_ETYPE_JTQ2:
1289  return HECMW_UCD_LABEL_JTQ2;
1290  case HECMW_ETYPE_BEM1:
1291  return HECMW_UCD_LABEL_BEM1;
1292  case HECMW_ETYPE_BEM2:
1293  return HECMW_UCD_LABEL_BEM2;
1294  case HECMW_ETYPE_BEM3:
1295  return HECMW_UCD_LABEL_BEM3; /* mixed beam-341*/
1296  case HECMW_ETYPE_SHT1:
1297  return HECMW_UCD_LABEL_SHT1;
1298  case HECMW_ETYPE_SHT2:
1299  return HECMW_UCD_LABEL_SHT2;
1300  case HECMW_ETYPE_SHQ1:
1301  return HECMW_UCD_LABEL_SHQ1;
1302  case HECMW_ETYPE_SHQ2:
1303  return HECMW_UCD_LABEL_SHQ2;
1304  case HECMW_ETYPE_SHQ3:
1305  return HECMW_UCD_LABEL_SHQ2;
1306  case HECMW_ETYPE_SHT6:
1307  return HECMW_UCD_LABEL_SHT6; /* mixed shell-solid */
1308  case HECMW_ETYPE_SHQ8:
1309  return HECMW_UCD_LABEL_SHQ8;
1310  case HECMW_ETYPE_LN11:
1311  return HECMW_UCD_LABEL_LN11;
1312  case HECMW_ETYPE_LN12:
1313  return HECMW_UCD_LABEL_LN12;
1314  case HECMW_ETYPE_LN13:
1315  return HECMW_UCD_LABEL_LN13;
1316  case HECMW_ETYPE_LN14:
1317  return HECMW_UCD_LABEL_LN14;
1318  case HECMW_ETYPE_LN15:
1319  return HECMW_UCD_LABEL_LN15;
1320  case HECMW_ETYPE_LN16:
1321  return HECMW_UCD_LABEL_LN16;
1322  case HECMW_ETYPE_LN21:
1323  return HECMW_UCD_LABEL_LN21;
1324  case HECMW_ETYPE_LN22:
1325  return HECMW_UCD_LABEL_LN22;
1326  case HECMW_ETYPE_LN23:
1327  return HECMW_UCD_LABEL_LN23;
1328  case HECMW_ETYPE_LN24:
1329  return HECMW_UCD_LABEL_LN24;
1330  case HECMW_ETYPE_LN25:
1331  return HECMW_UCD_LABEL_LN25;
1332  case HECMW_ETYPE_LN26:
1333  return HECMW_UCD_LABEL_LN26;
1334  case HECMW_ETYPE_LN31:
1335  return HECMW_UCD_LABEL_LN31;
1336  case HECMW_ETYPE_LN32:
1337  return HECMW_UCD_LABEL_LN32;
1338  case HECMW_ETYPE_LN33:
1339  return HECMW_UCD_LABEL_LN33;
1340  case HECMW_ETYPE_LN34:
1341  return HECMW_UCD_LABEL_LN34;
1342  case HECMW_ETYPE_LN35:
1343  return HECMW_UCD_LABEL_LN35;
1344  case HECMW_ETYPE_LN36:
1345  return HECMW_UCD_LABEL_LN36;
1346  case HECMW_ETYPE_LN41:
1347  return HECMW_UCD_LABEL_LN41;
1348  case HECMW_ETYPE_LN42:
1349  return HECMW_UCD_LABEL_LN42;
1350  case HECMW_ETYPE_LN43:
1351  return HECMW_UCD_LABEL_LN43;
1352  case HECMW_ETYPE_LN44:
1353  return HECMW_UCD_LABEL_LN44;
1354  case HECMW_ETYPE_LN45:
1355  return HECMW_UCD_LABEL_LN45;
1356  case HECMW_ETYPE_LN46:
1357  return HECMW_UCD_LABEL_LN46;
1358  case HECMW_ETYPE_LN51:
1359  return HECMW_UCD_LABEL_LN51;
1360  case HECMW_ETYPE_LN52:
1361  return HECMW_UCD_LABEL_LN52;
1362  case HECMW_ETYPE_LN53:
1363  return HECMW_UCD_LABEL_LN53;
1364  case HECMW_ETYPE_LN54:
1365  return HECMW_UCD_LABEL_LN54;
1366  case HECMW_ETYPE_LN55:
1367  return HECMW_UCD_LABEL_LN55;
1368  case HECMW_ETYPE_LN56:
1369  return HECMW_UCD_LABEL_LN56;
1370  case HECMW_ETYPE_LN61:
1371  return HECMW_UCD_LABEL_LN61;
1372  case HECMW_ETYPE_LN62:
1373  return HECMW_UCD_LABEL_LN62;
1374  case HECMW_ETYPE_LN63:
1375  return HECMW_UCD_LABEL_LN63;
1376  case HECMW_ETYPE_LN64:
1377  return HECMW_UCD_LABEL_LN64;
1378  case HECMW_ETYPE_LN65:
1379  return HECMW_UCD_LABEL_LN65;
1380  case HECMW_ETYPE_LN66:
1381  return HECMW_UCD_LABEL_LN66;
1382  case HECMW_ETYPE_PTT1:
1383  return HECMW_UCD_LABEL_PTT1;
1384  case HECMW_ETYPE_PTT2:
1385  return HECMW_UCD_LABEL_PTT2;
1386  case HECMW_ETYPE_PTQ1:
1387  return HECMW_UCD_LABEL_PTQ1;
1388  case HECMW_ETYPE_PTQ2:
1389  return HECMW_UCD_LABEL_PTQ2;
1390  default:
1391  return NULL;
1392  }
1393 
1394  return NULL;
1395 }
1396 
1397 extern int HECMW_get_etype_class(int etype) {
1398  switch (etype) {
1399  case HECMW_ETYPE_ROD1:
1400  return HECMW_CLASS_LINE;
1401  case HECMW_ETYPE_ROD2:
1402  return HECMW_CLASS_LINE;
1403  case HECMW_ETYPE_TRI1:
1404  return HECMW_CLASS_SURF;
1405  case HECMW_ETYPE_TRI2:
1406  return HECMW_CLASS_SURF;
1407  case HECMW_ETYPE_TRI22:
1408  return HECMW_CLASS_SURF;
1409  case HECMW_ETYPE_QUA1:
1410  return HECMW_CLASS_SURF;
1411  case HECMW_ETYPE_QUA2:
1412  return HECMW_CLASS_SURF;
1413  case HECMW_ETYPE_ROD31:
1414  return HECMW_CLASS_LINE;
1415  case HECMW_ETYPE_TET1:
1416  return HECMW_CLASS_SOLID;
1417  case HECMW_ETYPE_TET1_4:
1418  return HECMW_CLASS_SOLID;
1419  case HECMW_ETYPE_TET2:
1420  return HECMW_CLASS_SOLID;
1421  case HECMW_ETYPE_TET22:
1422  return HECMW_CLASS_SOLID;
1423  case HECMW_ETYPE_PRI1:
1424  return HECMW_CLASS_SOLID;
1425  case HECMW_ETYPE_PRI2:
1426  return HECMW_CLASS_SOLID;
1427  case HECMW_ETYPE_HEX1:
1428  return HECMW_CLASS_SOLID;
1429  case HECMW_ETYPE_HEX1_4:
1430  return HECMW_CLASS_SOLID;
1431  case HECMW_ETYPE_HEX2:
1432  return HECMW_CLASS_SOLID;
1433  case HECMW_ETYPE_PYR1:
1434  return HECMW_CLASS_SOLID;
1435  case HECMW_ETYPE_PYR2:
1436  return HECMW_CLASS_SOLID;
1437  case HECMW_ETYPE_MST1:
1438  return HECMW_CLASS_SOLID;
1439  case HECMW_ETYPE_MST2:
1440  return HECMW_CLASS_SOLID;
1441  case HECMW_ETYPE_MSQ1:
1442  return HECMW_CLASS_SOLID;
1443  case HECMW_ETYPE_MSQ2:
1444  return HECMW_CLASS_SOLID;
1445  case HECMW_ETYPE_JTB1:
1446  return HECMW_CLASS_JOINT;
1447  case HECMW_ETYPE_SPGDPT1:
1448  return HECMW_CLASS_LINE;
1449  case HECMW_ETYPE_JTT1:
1450  return HECMW_CLASS_JOINT;
1451  case HECMW_ETYPE_JTT2:
1452  return HECMW_CLASS_JOINT;
1453  case HECMW_ETYPE_JTQ1:
1454  return HECMW_CLASS_JOINT;
1455  case HECMW_ETYPE_JTQ2:
1456  return HECMW_CLASS_JOINT;
1457  case HECMW_ETYPE_BEM1:
1458  return HECMW_CLASS_LINE;
1459  case HECMW_ETYPE_BEM2:
1460  return HECMW_CLASS_LINE;
1461  case HECMW_ETYPE_BEM3:
1462  return HECMW_CLASS_LINE; /* mixed beam-341*/
1463  case HECMW_ETYPE_SHT1:
1464  return HECMW_CLASS_SURF;
1465  case HECMW_ETYPE_SHT2:
1466  return HECMW_CLASS_SURF;
1467  case HECMW_ETYPE_SHQ1:
1468  return HECMW_CLASS_SURF;
1469  case HECMW_ETYPE_SHQ2:
1470  return HECMW_CLASS_SURF;
1471  case HECMW_ETYPE_SHQ3:
1472  return HECMW_CLASS_SURF;
1473  case HECMW_ETYPE_SHT6:
1474  return HECMW_CLASS_SURF; /* mixed shell-solid */
1475  case HECMW_ETYPE_SHQ8:
1476  return HECMW_CLASS_SURF;
1477  case HECMW_ETYPE_LN11:
1478  return HECMW_CLASS_LINK;
1479  case HECMW_ETYPE_LN12:
1480  return HECMW_CLASS_LINK;
1481  case HECMW_ETYPE_LN13:
1482  return HECMW_CLASS_LINK;
1483  case HECMW_ETYPE_LN14:
1484  return HECMW_CLASS_LINK;
1485  case HECMW_ETYPE_LN15:
1486  return HECMW_CLASS_LINK;
1487  case HECMW_ETYPE_LN16:
1488  return HECMW_CLASS_LINK;
1489  case HECMW_ETYPE_LN21:
1490  return HECMW_CLASS_LINK;
1491  case HECMW_ETYPE_LN22:
1492  return HECMW_CLASS_LINK;
1493  case HECMW_ETYPE_LN23:
1494  return HECMW_CLASS_LINK;
1495  case HECMW_ETYPE_LN24:
1496  return HECMW_CLASS_LINK;
1497  case HECMW_ETYPE_LN25:
1498  return HECMW_CLASS_LINK;
1499  case HECMW_ETYPE_LN26:
1500  return HECMW_CLASS_LINK;
1501  case HECMW_ETYPE_LN31:
1502  return HECMW_CLASS_LINK;
1503  case HECMW_ETYPE_LN32:
1504  return HECMW_CLASS_LINK;
1505  case HECMW_ETYPE_LN33:
1506  return HECMW_CLASS_LINK;
1507  case HECMW_ETYPE_LN34:
1508  return HECMW_CLASS_LINK;
1509  case HECMW_ETYPE_LN35:
1510  return HECMW_CLASS_LINK;
1511  case HECMW_ETYPE_LN36:
1512  return HECMW_CLASS_LINK;
1513  case HECMW_ETYPE_LN41:
1514  return HECMW_CLASS_LINK;
1515  case HECMW_ETYPE_LN42:
1516  return HECMW_CLASS_LINK;
1517  case HECMW_ETYPE_LN43:
1518  return HECMW_CLASS_LINK;
1519  case HECMW_ETYPE_LN44:
1520  return HECMW_CLASS_LINK;
1521  case HECMW_ETYPE_LN45:
1522  return HECMW_CLASS_LINK;
1523  case HECMW_ETYPE_LN46:
1524  return HECMW_CLASS_LINK;
1525  case HECMW_ETYPE_LN51:
1526  return HECMW_CLASS_LINK;
1527  case HECMW_ETYPE_LN52:
1528  return HECMW_CLASS_LINK;
1529  case HECMW_ETYPE_LN53:
1530  return HECMW_CLASS_LINK;
1531  case HECMW_ETYPE_LN54:
1532  return HECMW_CLASS_LINK;
1533  case HECMW_ETYPE_LN55:
1534  return HECMW_CLASS_LINK;
1535  case HECMW_ETYPE_LN56:
1536  return HECMW_CLASS_LINK;
1537  case HECMW_ETYPE_LN61:
1538  return HECMW_CLASS_LINK;
1539  case HECMW_ETYPE_LN62:
1540  return HECMW_CLASS_LINK;
1541  case HECMW_ETYPE_LN63:
1542  return HECMW_CLASS_LINK;
1543  case HECMW_ETYPE_LN64:
1544  return HECMW_CLASS_LINK;
1545  case HECMW_ETYPE_LN65:
1546  return HECMW_CLASS_LINK;
1547  case HECMW_ETYPE_LN66:
1548  return HECMW_CLASS_LINK;
1549  case HECMW_ETYPE_PTT1:
1550  return HECMW_CLASS_SURF;
1551  case HECMW_ETYPE_PTT2:
1552  return HECMW_CLASS_SURF;
1553  case HECMW_ETYPE_PTQ1:
1554  return HECMW_CLASS_SURF;
1555  case HECMW_ETYPE_PTQ2:
1556  return HECMW_CLASS_SURF;
1557  default:
1558  return -1;
1559  }
1560 
1561  return -1;
1562 }
1563 
1564 extern int HECMW_get_etype_shape(int etype) {
1565  switch (etype) {
1566  case HECMW_ETYPE_ROD1:
1567  return HECMW_SHAPE_LINE;
1568  case HECMW_ETYPE_ROD2:
1569  return HECMW_SHAPE_LINE;
1570  case HECMW_ETYPE_TRI1:
1571  return HECMW_SHAPE_TRI;
1572  case HECMW_ETYPE_TRI2:
1573  return HECMW_SHAPE_TRI;
1574  case HECMW_ETYPE_TRI22:
1575  return HECMW_SHAPE_TRI;
1576  case HECMW_ETYPE_QUA1:
1577  return HECMW_SHAPE_QUAD;
1578  case HECMW_ETYPE_QUA2:
1579  return HECMW_SHAPE_QUAD;
1580  case HECMW_ETYPE_ROD31:
1581  return HECMW_SHAPE_LINE;
1582  case HECMW_ETYPE_TET1:
1583  return HECMW_SHAPE_TETRA;
1584  case HECMW_ETYPE_TET1_4:
1585  return HECMW_SHAPE_TETRA;
1586  case HECMW_ETYPE_TET2:
1587  return HECMW_SHAPE_TETRA;
1588  case HECMW_ETYPE_TET22:
1589  return HECMW_SHAPE_TETRA;
1590  case HECMW_ETYPE_PRI1:
1591  return HECMW_SHAPE_PRISM;
1592  case HECMW_ETYPE_PRI2:
1593  return HECMW_SHAPE_PRISM;
1594  case HECMW_ETYPE_HEX1:
1595  return HECMW_SHAPE_HEXA;
1596  case HECMW_ETYPE_HEX1_4:
1597  return HECMW_SHAPE_HEXA;
1598  case HECMW_ETYPE_HEX2:
1599  return HECMW_SHAPE_HEXA;
1600  case HECMW_ETYPE_PYR1:
1601  return HECMW_SHAPE_PYRAM;
1602  case HECMW_ETYPE_PYR2:
1603  return HECMW_SHAPE_PYRAM;
1604  case HECMW_ETYPE_MST1:
1605  return HECMW_SHAPE_TRI;
1606  case HECMW_ETYPE_MST2:
1607  return HECMW_SHAPE_TRI;
1608  case HECMW_ETYPE_MSQ1:
1609  return HECMW_SHAPE_QUAD;
1610  case HECMW_ETYPE_MSQ2:
1611  return HECMW_SHAPE_QUAD;
1612  case HECMW_ETYPE_JTB1:
1613  return HECMW_SHAPE_LINE;
1614  case HECMW_ETYPE_SPGDPT1:
1615  return HECMW_SHAPE_LINE;
1616  case HECMW_ETYPE_JTT1:
1617  return HECMW_SHAPE_TRI;
1618  case HECMW_ETYPE_JTT2:
1619  return HECMW_SHAPE_TRI;
1620  case HECMW_ETYPE_JTQ1:
1621  return HECMW_SHAPE_QUAD;
1622  case HECMW_ETYPE_JTQ2:
1623  return HECMW_SHAPE_QUAD;
1624  case HECMW_ETYPE_BEM1:
1625  return HECMW_SHAPE_LINE;
1626  case HECMW_ETYPE_BEM2:
1627  return HECMW_SHAPE_LINE;
1628  case HECMW_ETYPE_BEM3:
1629  return HECMW_SHAPE_LINE; /* mixed beam-341*/
1630  case HECMW_ETYPE_SHT1:
1631  return HECMW_SHAPE_TRI;
1632  case HECMW_ETYPE_SHT2:
1633  return HECMW_SHAPE_TRI;
1634  case HECMW_ETYPE_SHQ1:
1635  return HECMW_SHAPE_QUAD;
1636  case HECMW_ETYPE_SHQ2:
1637  return HECMW_SHAPE_QUAD;
1638  case HECMW_ETYPE_SHQ3:
1639  return HECMW_SHAPE_QUAD;
1640  case HECMW_ETYPE_SHT6:
1641  return HECMW_SHAPE_TRI; /* mixed shell-solid */
1642  case HECMW_ETYPE_SHQ8:
1643  return HECMW_SHAPE_QUAD;
1644  case HECMW_ETYPE_LN11:
1645  return HECMW_SHAPE_LINE;
1646  case HECMW_ETYPE_LN12:
1647  return HECMW_SHAPE_LINE;
1648  case HECMW_ETYPE_LN13:
1649  return HECMW_SHAPE_LINE;
1650  case HECMW_ETYPE_LN14:
1651  return HECMW_SHAPE_LINE;
1652  case HECMW_ETYPE_LN15:
1653  return HECMW_SHAPE_LINE;
1654  case HECMW_ETYPE_LN16:
1655  return HECMW_SHAPE_LINE;
1656  case HECMW_ETYPE_LN21:
1657  return HECMW_SHAPE_LINE;
1658  case HECMW_ETYPE_LN22:
1659  return HECMW_SHAPE_LINE;
1660  case HECMW_ETYPE_LN23:
1661  return HECMW_SHAPE_LINE;
1662  case HECMW_ETYPE_LN24:
1663  return HECMW_SHAPE_LINE;
1664  case HECMW_ETYPE_LN25:
1665  return HECMW_SHAPE_LINE;
1666  case HECMW_ETYPE_LN26:
1667  return HECMW_SHAPE_LINE;
1668  case HECMW_ETYPE_LN31:
1669  return HECMW_SHAPE_LINE;
1670  case HECMW_ETYPE_LN32:
1671  return HECMW_SHAPE_LINE;
1672  case HECMW_ETYPE_LN33:
1673  return HECMW_SHAPE_LINE;
1674  case HECMW_ETYPE_LN34:
1675  return HECMW_SHAPE_LINE;
1676  case HECMW_ETYPE_LN35:
1677  return HECMW_SHAPE_LINE;
1678  case HECMW_ETYPE_LN36:
1679  return HECMW_SHAPE_LINE;
1680  case HECMW_ETYPE_LN41:
1681  return HECMW_SHAPE_LINE;
1682  case HECMW_ETYPE_LN42:
1683  return HECMW_SHAPE_LINE;
1684  case HECMW_ETYPE_LN43:
1685  return HECMW_SHAPE_LINE;
1686  case HECMW_ETYPE_LN44:
1687  return HECMW_SHAPE_LINE;
1688  case HECMW_ETYPE_LN45:
1689  return HECMW_SHAPE_LINE;
1690  case HECMW_ETYPE_LN46:
1691  return HECMW_SHAPE_LINE;
1692  case HECMW_ETYPE_LN51:
1693  return HECMW_SHAPE_LINE;
1694  case HECMW_ETYPE_LN52:
1695  return HECMW_SHAPE_LINE;
1696  case HECMW_ETYPE_LN53:
1697  return HECMW_SHAPE_LINE;
1698  case HECMW_ETYPE_LN54:
1699  return HECMW_SHAPE_LINE;
1700  case HECMW_ETYPE_LN55:
1701  return HECMW_SHAPE_LINE;
1702  case HECMW_ETYPE_LN56:
1703  return HECMW_SHAPE_LINE;
1704  case HECMW_ETYPE_LN61:
1705  return HECMW_SHAPE_LINE;
1706  case HECMW_ETYPE_LN62:
1707  return HECMW_SHAPE_LINE;
1708  case HECMW_ETYPE_LN63:
1709  return HECMW_SHAPE_LINE;
1710  case HECMW_ETYPE_LN64:
1711  return HECMW_SHAPE_LINE;
1712  case HECMW_ETYPE_LN65:
1713  return HECMW_SHAPE_LINE;
1714  case HECMW_ETYPE_LN66:
1715  return HECMW_SHAPE_LINE;
1716  case HECMW_ETYPE_PTT1:
1717  return HECMW_SHAPE_TRI;
1718  case HECMW_ETYPE_PTT2:
1719  return HECMW_SHAPE_TRI;
1720  case HECMW_ETYPE_PTQ1:
1721  return HECMW_SHAPE_QUAD;
1722  case HECMW_ETYPE_PTQ2:
1723  return HECMW_SHAPE_QUAD;
1724  default:
1725  return -1;
1726  }
1727 
1728  return -1;
1729 }
1730 
1731 extern int HECMW_get_etype_vtk_shape(int etype) {
1732  switch (etype) {
1733 
1734  case HECMW_ETYPE_ROD1:
1735  return HECMW_VTK_SHAPE_LINE;
1736  case HECMW_ETYPE_ROD2:
1737  return HECMW_VTK_SHAPE_LINE;
1738  case HECMW_ETYPE_TRI1:
1739  return HECMW_VTK_SHAPE_TRI;
1740  case HECMW_ETYPE_TRI2:
1741  return HECMW_VTK_SHAPE_TRI;
1742  case HECMW_ETYPE_TRI22:
1743  return HECMW_VTK_SHAPE_TRI;
1744  case HECMW_ETYPE_QUA1:
1745  return HECMW_VTK_SHAPE_QUAD;
1746  case HECMW_ETYPE_QUA2:
1747  return HECMW_VTK_SHAPE_QUAD;
1748  case HECMW_ETYPE_ROD31:
1749  return HECMW_VTK_SHAPE_LINE;
1750  case HECMW_ETYPE_TET1:
1751  return HECMW_VTK_SHAPE_TETRA;
1752  case HECMW_ETYPE_TET1_4:
1753  return HECMW_VTK_SHAPE_TETRA;
1754  case HECMW_ETYPE_TET2:
1755  return HECMW_VTK_SHAPE_TETRA2;
1756  case HECMW_ETYPE_TET22:
1757  return HECMW_VTK_SHAPE_TETRA;
1758  case HECMW_ETYPE_PRI1:
1759  return HECMW_VTK_SHAPE_PRISM;
1760  case HECMW_ETYPE_PRI2:
1761  return HECMW_VTK_SHAPE_PRISM;
1762  case HECMW_ETYPE_HEX1:
1763  return HECMW_VTK_SHAPE_HEXA;
1764  case HECMW_ETYPE_HEX1_4:
1765  return HECMW_VTK_SHAPE_HEXA;
1766  case HECMW_ETYPE_HEX2:
1767  return HECMW_VTK_SHAPE_HEXA;
1768  case HECMW_ETYPE_PYR1:
1769  return HECMW_VTK_SHAPE_PYRAM;
1770  case HECMW_ETYPE_PYR2:
1771  return HECMW_VTK_SHAPE_PYRAM;
1772  case HECMW_ETYPE_MST1:
1773  return HECMW_VTK_SHAPE_TRI;
1774  case HECMW_ETYPE_MST2:
1775  return HECMW_VTK_SHAPE_TRI;
1776  case HECMW_ETYPE_MSQ1:
1777  return HECMW_VTK_SHAPE_QUAD;
1778  case HECMW_ETYPE_MSQ2:
1779  return HECMW_VTK_SHAPE_QUAD;
1780  case HECMW_ETYPE_JTB1:
1781  return HECMW_VTK_SHAPE_LINE;
1782  case HECMW_ETYPE_SPGDPT1:
1783  return HECMW_VTK_SHAPE_LINE;
1784  /* case HECMW_ETYPE_JTR1:
1785  return HECMW_VTK_SHAPE_LINE; */
1786  case HECMW_ETYPE_JTT1:
1787  return HECMW_VTK_SHAPE_TRI;
1788  case HECMW_ETYPE_JTT2:
1789  return HECMW_VTK_SHAPE_TRI;
1790  case HECMW_ETYPE_JTQ1:
1791  return HECMW_VTK_SHAPE_QUAD;
1792  case HECMW_ETYPE_JTQ2:
1793  return HECMW_VTK_SHAPE_QUAD;
1794  case HECMW_ETYPE_BEM1:
1795  return HECMW_VTK_SHAPE_LINE;
1796  case HECMW_ETYPE_BEM2:
1797  return HECMW_VTK_SHAPE_LINE;
1798  case HECMW_ETYPE_BEM3:
1799  return HECMW_VTK_SHAPE_LINE; /* mixed beam-341*/
1800  case HECMW_ETYPE_SHT1:
1801  return HECMW_VTK_SHAPE_TRI;
1802  case HECMW_ETYPE_SHT2:
1803  return HECMW_VTK_SHAPE_TRI;
1804  case HECMW_ETYPE_SHQ1:
1805  return HECMW_VTK_SHAPE_QUAD;
1806  case HECMW_ETYPE_SHQ2:
1807  return HECMW_VTK_SHAPE_QUAD;
1808  case HECMW_ETYPE_SHQ3:
1809  return HECMW_VTK_SHAPE_QUAD;
1810  case HECMW_ETYPE_SHT6:
1811  return HECMW_VTK_SHAPE_TRI; /* mixed shell-solid */
1812  case HECMW_ETYPE_SHQ8:
1813  return HECMW_VTK_SHAPE_QUAD;
1814  case HECMW_ETYPE_LN11:
1815  return HECMW_VTK_SHAPE_LINE;
1816  case HECMW_ETYPE_LN12:
1817  return HECMW_VTK_SHAPE_LINE;
1818  case HECMW_ETYPE_LN13:
1819  return HECMW_VTK_SHAPE_LINE;
1820  case HECMW_ETYPE_LN14:
1821  return HECMW_VTK_SHAPE_LINE;
1822  case HECMW_ETYPE_LN15:
1823  return HECMW_VTK_SHAPE_LINE;
1824  case HECMW_ETYPE_LN16:
1825  return HECMW_VTK_SHAPE_LINE;
1826  case HECMW_ETYPE_LN21:
1827  return HECMW_VTK_SHAPE_LINE;
1828  case HECMW_ETYPE_LN22:
1829  return HECMW_VTK_SHAPE_LINE;
1830  case HECMW_ETYPE_LN23:
1831  return HECMW_VTK_SHAPE_LINE;
1832  case HECMW_ETYPE_LN24:
1833  return HECMW_VTK_SHAPE_LINE;
1834  case HECMW_ETYPE_LN25:
1835  return HECMW_VTK_SHAPE_LINE;
1836  case HECMW_ETYPE_LN26:
1837  return HECMW_VTK_SHAPE_LINE;
1838  case HECMW_ETYPE_LN31:
1839  return HECMW_VTK_SHAPE_LINE;
1840  case HECMW_ETYPE_LN32:
1841  return HECMW_VTK_SHAPE_LINE;
1842  case HECMW_ETYPE_LN33:
1843  return HECMW_VTK_SHAPE_LINE;
1844  case HECMW_ETYPE_LN34:
1845  return HECMW_VTK_SHAPE_LINE;
1846  case HECMW_ETYPE_LN35:
1847  return HECMW_VTK_SHAPE_LINE;
1848  case HECMW_ETYPE_LN36:
1849  return HECMW_VTK_SHAPE_LINE;
1850  case HECMW_ETYPE_LN41:
1851  return HECMW_VTK_SHAPE_LINE;
1852  case HECMW_ETYPE_LN42:
1853  return HECMW_VTK_SHAPE_LINE;
1854  case HECMW_ETYPE_LN43:
1855  return HECMW_VTK_SHAPE_LINE;
1856  case HECMW_ETYPE_LN44:
1857  return HECMW_VTK_SHAPE_LINE;
1858  case HECMW_ETYPE_LN45:
1859  return HECMW_VTK_SHAPE_LINE;
1860  case HECMW_ETYPE_LN46:
1861  return HECMW_VTK_SHAPE_LINE;
1862  case HECMW_ETYPE_LN51:
1863  return HECMW_VTK_SHAPE_LINE;
1864  case HECMW_ETYPE_LN52:
1865  return HECMW_VTK_SHAPE_LINE;
1866  case HECMW_ETYPE_LN53:
1867  return HECMW_VTK_SHAPE_LINE;
1868  case HECMW_ETYPE_LN54:
1869  return HECMW_VTK_SHAPE_LINE;
1870  case HECMW_ETYPE_LN55:
1871  return HECMW_VTK_SHAPE_LINE;
1872  case HECMW_ETYPE_LN56:
1873  return HECMW_VTK_SHAPE_LINE;
1874  case HECMW_ETYPE_LN61:
1875  return HECMW_VTK_SHAPE_LINE;
1876  case HECMW_ETYPE_LN62:
1877  return HECMW_VTK_SHAPE_LINE;
1878  case HECMW_ETYPE_LN63:
1879  return HECMW_VTK_SHAPE_LINE;
1880  case HECMW_ETYPE_LN64:
1881  return HECMW_VTK_SHAPE_LINE;
1882  case HECMW_ETYPE_LN65:
1883  return HECMW_VTK_SHAPE_LINE;
1884  case HECMW_ETYPE_LN66:
1885  return HECMW_VTK_SHAPE_LINE;
1886  case HECMW_ETYPE_PTT1:
1887  return HECMW_VTK_SHAPE_TRI;
1888  case HECMW_ETYPE_PTT2:
1889  return HECMW_VTK_SHAPE_TRI;
1890  case HECMW_ETYPE_PTQ1:
1891  return HECMW_VTK_SHAPE_QUAD;
1892  case HECMW_ETYPE_PTQ2:
1893  return HECMW_VTK_SHAPE_QUAD;
1894  default:
1895  return -1;
1896  }
1897 
1898  return -1;
1899 }
1900 
1901 
1902 /*============================================================================*/
1903 
1904 extern int HECMW_is_etype_rod(int etype) {
1905  switch (etype) {
1906  case 111: /* fall through */
1907  case 112:
1908  return 1;
1909  }
1910  return 0;
1911 }
1912 
1913 extern int HECMW_is_etype_surface(int etype) {
1914  switch (etype) {
1915  case 231: /* fall through */
1916  case 232: /* fall through */
1917  case 241: /* fall through */
1918  case 242:
1919  case 2322:
1920  return 1;
1921  }
1922  return 0;
1923 }
1924 
1925 extern int HECMW_is_etype_solid(int etype) {
1926  switch (etype) {
1927  case 301:
1928  case 341: /* fall through */
1929  case 342: /* fall through */
1930  case 3414: /* fall through */
1931  case 3422:
1932  case 351: /* fall through */
1933  case 352: /* fall through */
1934  case 361: /* fall through */
1935  case 362: /* fall through */
1936  case 3614: /* fall through */
1937  case 371: /* fall through */
1938  case 372:
1939  return 1;
1940  }
1941  if (HECMW_is_etype_rod(etype)) return 1;
1942  if (HECMW_is_etype_surface(etype)) return 1;
1943  return 0;
1944 }
1945 
1946 extern int HECMW_is_etype_interface(int etype) {
1947  switch (etype) {
1948  case 431: /* fall through */
1949  case 432: /* fall through */
1950  case 441: /* fall through */
1951  case 442: /* fall through */
1952  case 501: /* fall through */
1953  case 511: /* fall through */
1954  case 531: /* fall through */
1955  case 532: /* fall through */
1956  case 541: /* fall through */
1957  case 542:
1958  return 1;
1959  }
1960  return 0;
1961 }
1962 
1963 extern int HECMW_is_etype_beam(int etype) {
1964  switch (etype) {
1965  case 611: /* fall through */
1966  case 612:
1967  case 641:
1968  return 1;
1969  }
1970  return 0;
1971 }
1972 
1973 extern int HECMW_is_etype_shell(int etype) {
1974  switch (etype) {
1975  case 731: /* fall through */
1976  case 732: /* fall through */
1977  case 741: /* fall through */
1978  case 743:
1979  case 761:
1980  case 781:
1981  case 742:
1982  return 1;
1983  }
1984  return 0;
1985 }
1986 
1987 extern int HECMW_is_etype_link(int etype) {
1988  switch (etype) {
1989  case 911: /* fall through */
1990  case 912: /* fall through */
1991  case 913: /* fall through */
1992  case 914: /* fall through */
1993  case 915: /* fall through */
1994  case 916: /* fall through */
1995  case 921: /* fall through */
1996  case 922: /* fall through */
1997  case 923: /* fall through */
1998  case 924: /* fall through */
1999  case 925: /* fall through */
2000  case 926: /* fall through */
2001  case 931: /* fall through */
2002  case 932: /* fall through */
2003  case 933: /* fall through */
2004  case 934: /* fall through */
2005  case 935: /* fall through */
2006  case 936: /* fall through */
2007  case 941: /* fall through */
2008  case 942: /* fall through */
2009  case 943: /* fall through */
2010  case 944: /* fall through */
2011  case 945: /* fall through */
2012  case 946: /* fall through */
2013  case 951: /* fall through */
2014  case 952: /* fall through */
2015  case 953: /* fall through */
2016  case 954: /* fall through */
2017  case 955: /* fall through */
2018  case 956: /* fall through */
2019  case 961: /* fall through */
2020  case 962: /* fall through */
2021  case 963: /* fall through */
2022  case 964: /* fall through */
2023  case 965: /* fall through */
2024  case 966:
2025  return 1;
2026  }
2027  return 0;
2028 }
2029 
2030 extern int HECMW_is_etype_33struct(int etype) {
2031  switch (etype) {
2032  case HECMW_ETYPE_BEM3: /* fall through */
2033  case HECMW_ETYPE_SHT6: /* fall through */
2034  case HECMW_ETYPE_SHQ8:
2035  return 1;
2036  }
2037  return 0;
2038 }
2039 
2040 extern int HECMW_is_etype_truss(int etype) {
2041  switch (etype) {
2042  case 301:
2043  return 1;
2044  }
2045  return 0;
2046 }
2047 
2048 extern int HECMW_is_etype_patch(int etype) {
2049  switch (etype) {
2050  case HECMW_ETYPE_PTT1: /* fall through */
2051  case HECMW_ETYPE_PTT2: /* fall through */
2052  case HECMW_ETYPE_PTQ1: /* fall through */
2053  case HECMW_ETYPE_PTQ2:
2054  return 1;
2055  }
2056  return 0;
2057 }
2058 
2059 extern int HECMW_is_etype_smoothing(int etype) {
2060  switch (etype) {
2061  case 881:
2062  case 891:
2063  return 1;
2064  }
2065  return 0;
2066 }
2067 
2068 extern const int *HECMW_get_surf_nodes(int etype, int sid, int *surf_etype)
2069 {
2070  static const int snodes_tet[4][6] = {
2071  {1, 2, 3, 5, 6, 7},
2072  {1, 2, 4, 9, 8, 7},
2073  {2, 3, 4, 10, 9, 5},
2074  {3, 1, 4, 8, 10, 6} };
2075  static const int snodes_pri[5][8] = {
2076  {1, 2, 3, 7, 8, 9},
2077  {4, 5, 6, 10, 11, 12},
2078  {1, 2, 5, 4, 9, 14, 12, 13},
2079  {2, 3, 6, 5, 7, 15, 10, 14},
2080  {3, 1, 4, 6, 8, 13, 11, 15} };
2081  static const int snodes_hex[6][8] = {
2082  {1, 2, 3, 4, 9, 10, 11, 12},
2083  {5, 6, 7, 8, 13, 14, 15, 16},
2084  {1, 2, 6, 5, 9, 18, 13, 17},
2085  {2, 3, 7, 6, 10, 19, 14, 18},
2086  {3, 4, 8, 7, 11, 20, 15, 19},
2087  {4, 1, 5, 8, 12, 17, 16, 20} };
2088  static const int snodes_pyr[5][8] = {
2089  {4, 1, 5, 10, 13, 9},
2090  {2, 3, 5, 12, 11, 7},
2091  {1, 2, 5, 11, 10, 6},
2092  {3, 4, 5, 13, 12, 8},
2093  {4, 3, 2, 1, 8, 7, 6, 9} };
2094 
2095  switch (etype) {
2096  case HECMW_ETYPE_TET1:
2097  HECMW_assert( 0 < sid && sid <= 4 );
2098  *surf_etype = HECMW_ETYPE_PTT1;
2099  return snodes_tet[sid-1];
2100  case HECMW_ETYPE_TET2:
2101  HECMW_assert( 0 < sid && sid <= 4 );
2102  *surf_etype = HECMW_ETYPE_PTT2;
2103  return snodes_tet[sid-1];
2104  case HECMW_ETYPE_PRI1:
2105  HECMW_assert( 0 < sid && sid <= 5 );
2106  if (sid <= 2) {
2107  *surf_etype = HECMW_ETYPE_PTT1;
2108  } else {
2109  *surf_etype = HECMW_ETYPE_PTQ1;
2110  }
2111  return snodes_pri[sid-1];
2112  case HECMW_ETYPE_PRI2:
2113  HECMW_assert( 0 < sid && sid <= 5 );
2114  if (sid <= 2) {
2115  *surf_etype = HECMW_ETYPE_PTT2;
2116  } else {
2117  *surf_etype = HECMW_ETYPE_PTQ2;
2118  }
2119  return snodes_pri[sid-1];
2120  case HECMW_ETYPE_HEX1:
2121  HECMW_assert( 0 < sid && sid <= 6 );
2122  *surf_etype = HECMW_ETYPE_PTQ1;
2123  return snodes_hex[sid-1];
2124  case HECMW_ETYPE_HEX2:
2125  HECMW_assert( 0 < sid && sid <= 6 );
2126  *surf_etype = HECMW_ETYPE_PTQ2;
2127  return snodes_hex[sid-1];
2128  case HECMW_ETYPE_PYR1:
2129  HECMW_assert( 0 < sid && sid <= 5 );
2130  if (sid <= 4) {
2131  *surf_etype = HECMW_ETYPE_PTT1;
2132  } else {
2133  *surf_etype = HECMW_ETYPE_PTQ1;
2134  }
2135  return snodes_pyr[sid-1];
2136  case HECMW_ETYPE_PYR2:
2137  HECMW_assert( 0 < sid && sid <= 5 );
2138  if (sid <= 4) {
2139  *surf_etype = HECMW_ETYPE_PTT2;
2140  } else {
2141  *surf_etype = HECMW_ETYPE_PTQ2;
2142  }
2143  return snodes_pyr[sid-1];
2144  default:
2145  return NULL;
2146  }
2147  return NULL;
2148 }
2149 
2150 /* interface for fortran -- added by Kazuya Goto (AdvanceSoft) */
2151 
2152 int hecmw_get_max_node_if(int *etype) { return HECMW_get_max_node(*etype); }
2153 int hecmw_get_max_node_if_(int *etype) { return HECMW_get_max_node(*etype); }
2154 int hecmw_get_max_node_if__(int *etype) { return HECMW_get_max_node(*etype); }
2155 int HECMW_GET_MAX_NODE_IF(int *etype) { return HECMW_get_max_node(*etype); }
2156 
2157 int hecmw_is_etype_rod_if(int *etype) { return HECMW_is_etype_rod(*etype); }
2158 int hecmw_is_etype_rod_if_(int *etype) { return HECMW_is_etype_rod(*etype); }
2159 int hecmw_is_etype_rod_if__(int *etype) { return HECMW_is_etype_rod(*etype); }
2160 int HECMW_IS_ETYPE_ROD_IF(int *etype) { return HECMW_is_etype_rod(*etype); }
2161 
2162 int hecmw_is_etype_surface_if(int *etype) {
2163  return HECMW_is_etype_surface(*etype);
2164 }
2166  return HECMW_is_etype_surface(*etype);
2167 }
2169  return HECMW_is_etype_surface(*etype);
2170 }
2171 int HECMW_IS_ETYPE_SURFACE_IF(int *etype) {
2172  return HECMW_is_etype_surface(*etype);
2173 }
2174 
2175 int hecmw_is_etype_solid_if(int *etype) { return HECMW_is_etype_solid(*etype); }
2176 int hecmw_is_etype_solid_if_(int *etype) {
2177  return HECMW_is_etype_solid(*etype);
2178 }
2179 int hecmw_is_etype_solid_if__(int *etype) {
2180  return HECMW_is_etype_solid(*etype);
2181 }
2182 int HECMW_IS_ETYPE_SOLID_IF(int *etype) { return HECMW_is_etype_solid(*etype); }
2183 
2185  return HECMW_is_etype_interface(*etype);
2186 }
2188  return HECMW_is_etype_interface(*etype);
2189 }
2191  return HECMW_is_etype_interface(*etype);
2192 }
2194  return HECMW_is_etype_interface(*etype);
2195 }
2196 
2197 int hecmw_is_etype_beam_if(int *etype) { return HECMW_is_etype_beam(*etype); }
2198 int hecmw_is_etype_beam_if_(int *etype) { return HECMW_is_etype_beam(*etype); }
2199 int hecmw_is_etype_beam_if__(int *etype) { return HECMW_is_etype_beam(*etype); }
2200 int HECMW_IS_ETYPE_BEAM_IF(int *etype) { return HECMW_is_etype_beam(*etype); }
2201 
2202 int hecmw_is_etype_shell_if(int *etype) { return HECMW_is_etype_shell(*etype); }
2203 int hecmw_is_etype_shell_if_(int *etype) {
2204  return HECMW_is_etype_shell(*etype);
2205 }
2206 int hecmw_is_etype_shell_if__(int *etype) {
2207  return HECMW_is_etype_shell(*etype);
2208 }
2209 int HECMW_IS_ETYPE_SHELL_IF(int *etype) { return HECMW_is_etype_shell(*etype); }
2210 
2211 int hecmw_is_etype_link_if(int *etype) { return HECMW_is_etype_link(*etype); }
2212 int hecmw_is_etype_link_if_(int *etype) { return HECMW_is_etype_link(*etype); }
2213 int hecmw_is_etype_link_if__(int *etype) { return HECMW_is_etype_link(*etype); }
2214 int HECMW_IS_ETYPE_LINK_IF(int *etype) { return HECMW_is_etype_link(*etype); }
2215 
2217  return HECMW_is_etype_33struct(*etype);
2218 }
2220  return HECMW_is_etype_33struct(*etype);
2221 }
2223  return HECMW_is_etype_33struct(*etype);
2224 }
2226  return HECMW_is_etype_33struct(*etype);
2227 }
2228 
2229 int hecmw_is_etype_truss_if(int *etype) { return HECMW_is_etype_truss(*etype); }
2230 int hecmw_is_etype_truss_if_(int *etype) {
2231  return HECMW_is_etype_truss(*etype);
2232 }
2233 int hecmw_is_etype_truss_if__(int *etype) {
2234  return HECMW_is_etype_truss(*etype);
2235 }
2236 int HECMW_IS_ETYPE_TRUSS_IF(int *etype) { return HECMW_is_etype_truss(*etype); }
2237 
2238 int hecmw_is_etype_patch_if(int *etype) { return HECMW_is_etype_patch(*etype); }
2239 int hecmw_is_etype_patch_if_(int *etype) { return HECMW_is_etype_patch(*etype); }
2240 int hecmw_is_etype_patch_if__(int *etype) { return HECMW_is_etype_patch(*etype); }
2241 int HECMW_IS_ETYPE_PATCH_IF(int *etype) { return HECMW_is_etype_patch(*etype); }
2242 
2243 int hecmw_is_etype_smoothing_if(int *etype) { return HECMW_is_etype_smoothing(*etype); }
2244 int hecmw_is_etype_smoothing_if_(int *etype) { return HECMW_is_etype_smoothing(*etype); }
2245 int hecmw_is_etype_smoothing_if__(int *etype) { return HECMW_is_etype_smoothing(*etype); }
2246 int HECMW_IS_ETYPE_SMOOTHING_IF(int *etype) { return HECMW_is_etype_smoothing(*etype); }
#define HECMW_MAX_QSUF_SHQ8
#define HECMW_MAX_TSUF_JTT2
#define HECMW_MAX_EDGE_SHT2
#define HECMW_MAX_NODE_LN11
#define HECMW_GEOFEM_ETYPE_MST1
#define HECMW_MAX_EDGE_LN42
#define HECMW_ETYPE_PRI1
#define HECMW_ETYPE_PRI2
#define HECMW_ETYPE_LN24
#define HECMW_MAX_TSUF_SHQ2
#define HECMW_MAX_EDGE_LN55
#define HECMW_MESH_ETYPE_LN14
#define HECMW_GEOFEM_ETYPE_HEX1_4
#define HECMW_MESH_ETYPE_PRI1
#define HECMW_MAX_EDGE_LN56
#define HECMW_ETYPE_MST1
#define HECMW_MAX_TSUF_HEX2
#define HECMW_MAX_TSUF_TRI1
#define HECMW_ETYPE_TET1_4
#define HECMW_MAX_SURF_TET1_4
#define HECMW_MAX_TSUF_HEX1_4
#define HECMW_CLASS_SURF
#define HECMW_MESH_ETYPE_LN55
#define HECMW_ETYPE_TRI22
#define HECMW_MAX_TSUF_ROD1
#define HECMW_MESH_ETYPE_MSQ1
#define HECMW_MESH_ETYPE_SHQ8
#define HECMW_MESH_ETYPE_BEM2
#define HECMW_MAX_NODE_PTT1
#define HECMW_MAX_TSUF_SHT1
#define HECMW_MAX_EDGE_LN43
#define HECMW_ETYPE_BEM3
#define HECMW_MAX_SURF_LN55
#define HECMW_MAX_EDGE_LN52
#define HECMW_UCD_LABEL_LN23
#define HECMW_MAX_EDGE_BEM2
#define HECMW_MAX_EDGE_LN44
#define HECMW_MESH_ETYPE_ROD31
#define HECMW_MAX_NODE_SHT2
#define HECMW_MAX_TSUF_PTT2
#define HECMW_MAX_SURF_MST1
#define HECMW_MAX_QSUF_PYR2
#define HECMW_MAX_NODE_BEM2
#define HECMW_MAX_NODE_MSQ1
#define HECMW_MAX_EDGE_LN34
#define HECMW_MESH_ETYPE_LN35
#define HECMW_UCD_LABEL_LN36
#define HECMW_MAX_EDGE_MSQ1
#define HECMW_MAX_QSUF_MST2
#define HECMW_ETYPE_LN54
#define HECMW_CLASS_LINK
#define HECMW_GEOFEM_ETYPE_TRI2
#define HECMW_MESH_ETYPE_LN23
#define HECMW_UCD_LABEL_LN32
#define HECMW_GEOFEM_ETYPE_BEM2
#define HECMW_MAX_SURF_LN62
#define HECMW_MAX_EDGE_JTB1
#define HECMW_MAX_EDGE_LN15
#define HECMW_MAX_TSUF_LN66
#define HECMW_ETYPE_LN51
#define HECMW_MESH_ETYPE_LN13
#define HECMW_MAX_SURF_LN13
#define HECMW_ETYPE_LN15
#define HECMW_SHAPE_QUAD
#define HECMW_MAX_QSUF_LN63
#define HECMW_MAX_QSUF_LN54
#define HECMW_MAX_QSUF_JTT1
#define HECMW_MESH_ETYPE_SHQ1
#define HECMW_MAX_QSUF_PTQ2
#define HECMW_MAX_TSUF_LN41
#define HECMW_CLASS_SOLID
#define HECMW_MAX_SURF_SHT2
#define HECMW_MAX_QSUF_LN45
#define HECMW_ETYPE_JTB1
#define HECMW_MAX_SURF_LN24
#define HECMW_GEOFEM_ETYPE_TET2
#define HECMW_ETYPE_PYR1
#define HECMW_MESH_ETYPE_JTQ1
#define HECMW_MAX_SURF_LN25
#define HECMW_MAX_SURF_JTB1
#define HECMW_MAX_NODE_TET2
#define HECMW_MESH_ETYPE_TRI22
#define HECMW_ETYPE_LN66
#define HECMW_MAX_QSUF_LN64
#define HECMW_MAX_EDGE_LN35
#define HECMW_MAX_SURF_LN61
#define HECMW_MAX_QSUF_LN44
#define HECMW_MAX_QSUF_JTB1
#define HECMW_MAX_SURF_LN64
#define HECMW_MESH_ETYPE_LN41
#define HECMW_UCD_LABEL_JTQ2
#define HECMW_MESH_ETYPE_LN31
#define HECMW_ETYPE_LN65
#define HECMW_UCD_LABEL_LN66
#define HECMW_MESH_ETYPE_LN22
#define HECMW_MAX_QSUF_LN41
#define HECMW_MESH_ETYPE_PTQ2
#define HECMW_MAX_SURF_PTQ1
#define HECMW_UCD_LABEL_JTB1
#define HECMW_ETYPE_LN11
#define HECMW_ETYPE_LN43
#define HECMW_MESH_ETYPE_QUA1
#define HECMW_MESH_ETYPE_LN45
#define HECMW_MAX_NODE_LN45
#define HECMW_ETYPE_QUA2
#define HECMW_VTK_SHAPE_TETRA
#define HECMW_MAX_NODE_SHQ2
#define HECMW_MAX_TSUF_QUA1
#define HECMW_MAX_EDGE_LN32
#define HECMW_UCD_LABEL_BEM3
#define HECMW_ETYPE_LN42
#define HECMW_MAX_QSUF_LN25
#define HECMW_MAX_NODE_LN65
#define HECMW_UCD_LABEL_LN53
#define HECMW_MAX_SURF_PYR1
#define HECMW_MAX_NODE_ROD2
#define HECMW_MAX_EDGE_LN23
#define HECMW_MAX_NODE_ROD31
#define HECMW_MESH_ETYPE_LN16
#define HECMW_MESH_ETYPE_JTB1
#define HECMW_MAX_TSUF_LN65
#define HECMW_MAX_QSUF_BEM1
#define HECMW_ETYPE_LN32
#define HECMW_MAX_NODE_LN41
#define HECMW_MAX_TSUF_LN12
#define HECMW_MESH_ETYPE_LN11
#define HECMW_MAX_NODE_PYR2
#define HECMW_UCD_LABEL_SPGDPT1
#define HECMW_MAX_NODE_MST2
#define HECMW_MAX_NODE_JTT1
#define HECMW_UCD_LABEL_TRI1
#define HECMW_MESH_ETYPE_LN44
#define HECMW_UCD_LABEL_PTQ2
#define HECMW_MAX_EDGE_LN26
#define HECMW_MAX_QSUF_LN21
#define HECMW_MAX_SURF_SHQ8
#define HECMW_MAX_QSUF_TRI1
#define HECMW_MAX_NODE_QUA1
#define HECMW_MAX_TSUF_ROD2
#define HECMW_MESH_ETYPE_PYR1
#define HECMW_MAX_QSUF_LN52
#define HECMW_MAX_QSUF_LN34
#define HECMW_MAX_EDGE_TET1_4
#define HECMW_MAX_QSUF_SHT2
#define HECMW_MAX_EDGE_LN11
#define HECMW_UCD_LABEL_MSQ1
#define HECMW_MAX_NODE_LN64
#define HECMW_MAX_EDGE_LN16
#define HECMW_MAX_SURF_QUA1
#define HECMW_MESH_ETYPE_TET1
#define HECMW_MAX_SURF_ROD1
#define HECMW_MAX_NODE_LN12
#define HECMW_ETYPE_LN55
#define HECMW_GEOFEM_ETYPE_JTQ2
#define HECMW_MESH_ETYPE_PTQ1
#define HECMW_MESH_ETYPE_LN66
#define HECMW_MAX_NODE_BEM1
#define HECMW_UCD_LABEL_SHQ1
#define HECMW_MAX_SURF_JTQ2
#define HECMW_MAX_NODE_LN14
#define HECMW_MAX_NODE_TET1
#define HECMW_UCD_LABEL_LN46
#define HECMW_MAX_TSUF_LN32
#define HECMW_UCD_LABEL_LN14
#define HECMW_MAX_SURF_LN34
#define HECMW_MESH_ETYPE_MST1
#define HECMW_MAX_SURF_JTT1
#define HECMW_MAX_TSUF_PTQ1
#define HECMW_ETYPE_MSQ2
#define HECMW_MAX_EDGE_LN41
#define HECMW_MAX_EDGE_JTT2
#define HECMW_GEOFEM_ETYPE_BEM3
#define HECMW_MESH_ETYPE_SPGDPT1
#define HECMW_MAX_QSUF_LN11
#define HECMW_UCD_LABEL_LN44
#define HECMW_MAX_EDGE_LN61
#define HECMW_MAX_QSUF_TRI2
#define HECMW_MAX_SURF_PRI1
#define HECMW_MAX_QSUF_LN23
#define HECMW_MAX_TSUF_BEM3
#define HECMW_GEOFEM_ETYPE_MSQ2
#define HECMW_MAX_EDGE_MST2
#define HECMW_UCD_LABEL_ROD1
#define HECMW_MAX_TSUF_MST1
#define HECMW_UCD_LABEL_MSQ2
#define HECMW_MESH_ETYPE_LN53
#define HECMW_MAX_QSUF_TET2
#define HECMW_MAX_NODE_LN43
#define HECMW_GEOFEM_ETYPE_QUA1
#define HECMW_ETYPE_LN61
#define HECMW_MAX_EDGE_LN24
#define HECMW_MAX_EDGE_PTQ2
#define HECMW_UCD_LABEL_QUA2
#define HECMW_MAX_EDGE_BEM1
#define HECMW_MAX_TSUF_LN21
#define HECMW_ETYPE_JTQ2
#define HECMW_MAX_EDGE_PRI1
#define HECMW_MAX_SURF_SHT1
#define HECMW_GEOFEM_ETYPE_SHT2
#define HECMW_MAX_TSUF_SHQ8
#define HECMW_ETYPE_LN22
#define HECMW_VTK_SHAPE_QUAD
#define HECMW_MAX_TSUF_JTT1
#define HECMW_MESH_ETYPE_PYR2
#define HECMW_MAX_NODE_LN66
#define HECMW_UCD_LABEL_PYR1
#define HECMW_MAX_TSUF_LN55
#define HECMW_MESH_ETYPE_SHT6
#define HECMW_MAX_NODE_LN32
#define HECMW_MAX_SURF_LN21
#define HECMW_MAX_EDGE_MSQ2
#define HECMW_UCD_LABEL_SHT1
#define HECMW_MESH_ETYPE_BEM1
#define HECMW_MESH_ETYPE_LN56
#define HECMW_MAX_EDGE_PRI2
#define HECMW_MAX_TSUF_SHT2
#define HECMW_ETYPE_SHQ1
#define HECMW_MESH_ETYPE_LN61
#define HECMW_VTK_SHAPE_HEXA
#define HECMW_MAX_QSUF_LN42
#define HECMW_MAX_QSUF_MSQ1
#define HECMW_MAX_SURF_LN15
#define HECMW_MAX_QSUF_LN14
#define HECMW_MAX_QSUF_ROD2
#define HECMW_ETYPE_SHT1
#define HECMW_MAX_QSUF_LN24
#define HECMW_MAX_NODE_SHT6
#define HECMW_MAX_SURF_LN41
#define HECMW_MAX_TSUF_LN31
#define HECMW_UCD_LABEL_LN25
#define HECMW_MAX_NODE_LN34
#define HECMW_MAX_SURF_PTT2
#define HECMW_MAX_SURF_LN22
#define HECMW_ETYPE_TET2
#define HECMW_MAX_NODE_PRI2
#define HECMW_MAX_NODE_PTQ1
#define HECMW_MAX_TSUF_TET1_4
#define HECMW_MAX_EDGE_QUA2
#define HECMW_MAX_QSUF_MST1
#define HECMW_MAX_NODE_LN16
#define HECMW_MESH_ETYPE_TRI1
#define HECMW_MAX_TSUF_PYR1
#define HECMW_MAX_QSUF_LN32
#define HECMW_MESH_ETYPE_LN51
#define HECMW_MAX_NODE_PRI1
#define HECMW_GEOFEM_ETYPE_MSQ1
#define HECMW_MESH_ETYPE_LN26
#define HECMW_MAX_EDGE_QUA1
#define HECMW_MAX_QSUF_HEX1
#define HECMW_MAX_TSUF_LN44
#define HECMW_ETYPE_PTQ1
#define HECMW_MAX_QSUF_LN12
#define HECMW_MAX_SURF_LN26
#define HECMW_MAX_TSUF_JTQ2
#define HECMW_MESH_ETYPE_TET22
#define HECMW_MESH_ETYPE_LN64
#define HECMW_MESH_ETYPE_TET1_4
#define HECMW_GEOFEM_ETYPE_SHQ2
#define HECMW_MAX_QSUF_LN16
#define HECMW_UCD_LABEL_LN26
#define HECMW_MAX_SURF_SPGDPT1
#define HECMW_MAX_EDGE_SHQ2
#define HECMW_MESH_ETYPE_LN34
#define HECMW_MAX_QSUF_JTQ1
#define HECMW_MAX_EDGE_HEX1_4
#define HECMW_ETYPE_JTT2
#define HECMW_MAX_QSUF_HEX2
#define HECMW_ETYPE_PTT1
#define HECMW_UCD_LABEL_LN61
#define HECMW_MAX_TSUF_LN22
#define HECMW_UCD_LABEL_PRI2
#define HECMW_MAX_QSUF_SHQ2
#define HECMW_MAX_NODE_LN42
#define HECMW_MAX_EDGE_LN64
#define HECMW_UCD_LABEL_LN55
#define HECMW_MAX_NODE_LN33
#define HECMW_MAX_SURF_LN12
#define HECMW_MAX_SURF_LN32
#define HECMW_MAX_TSUF_SHT6
#define HECMW_MAX_TSUF_LN64
#define HECMW_ETYPE_LN26
#define HECMW_MAX_QSUF_LN55
#define HECMW_ETYPE_LN33
#define HECMW_MAX_SURF_HEX1
#define HECMW_GEOFEM_ETYPE_BEM1
#define HECMW_MESH_ETYPE_TET2
#define HECMW_ETYPE_LN53
#define HECMW_UCD_LABEL_PTT1
#define HECMW_UCD_LABEL_LN64
#define HECMW_MAX_EDGE_JTQ2
#define HECMW_ETYPE_LN64
#define HECMW_MAX_NODE_LN61
#define HECMW_MAX_QSUF_PRI2
#define HECMW_UCD_LABEL_SHT6
#define HECMW_MESH_ETYPE_LN63
#define HECMW_MAX_SURF_LN45
#define HECMW_MAX_TSUF_MSQ2
#define HECMW_MAX_TSUF_PYR2
#define HECMW_MAX_NODE_LN23
#define HECMW_MAX_TSUF_PTT1
#define HECMW_MAX_EDGE_PYR2
#define HECMW_MAX_TSUF_LN53
#define HECMW_MAX_NODE_BEM3
#define HECMW_MAX_NODE_PTQ2
#define HECMW_UCD_LABEL_PTT2
#define HECMW_UCD_LABEL_ROD2
#define HECMW_ETYPE_LN13
#define HECMW_MAX_EDGE_BEM3
#define HECMW_UCD_LABEL_JTT2
#define HECMW_MAX_NODE_LN53
#define HECMW_MAX_QSUF_LN56
#define HECMW_ETYPE_LN46
#define HECMW_MAX_SURF_LN11
#define HECMW_MAX_TSUF_LN13
#define HECMW_MAX_TSUF_BEM2
#define HECMW_ETYPE_SPGDPT1
#define HECMW_MESH_ETYPE_QUA2
#define HECMW_MAX_EDGE_SHQ8
#define HECMW_SHAPE_PYRAM
#define HECMW_MAX_TSUF_SHQ1
#define HECMW_MAX_EDGE_LN36
#define HECMW_MESH_ETYPE_LN32
#define HECMW_MAX_QSUF_QUA1
#define HECMW_MESH_ETYPE_HEX1_4
#define HECMW_MAX_TSUF_TET2
#define HECMW_MAX_QSUF_BEM3
#define HECMW_MAX_NODE_HEX1
#define HECMW_MESH_ETYPE_MST2
#define HECMW_MAX_QSUF_LN31
#define HECMW_MAX_SURF_LN53
#define HECMW_UCD_LABEL_SHQ2
#define HECMW_MESH_ETYPE_SHT1
#define HECMW_MAX_TSUF_SPGDPT1
#define HECMW_ETYPE_SHT2
#define HECMW_UCD_LABEL_LN16
#define HECMW_ETYPE_LN34
#define HECMW_MAX_TSUF_MSQ1
#define HECMW_GEOFEM_ETYPE_HEX2
#define HECMW_MAX_NODE_LN52
#define HECMW_MAX_TSUF_LN56
#define HECMW_CLASS_JOINT
#define HECMW_MAX_TSUF_LN36
#define HECMW_MESH_ETYPE_JTT2
#define HECMW_MAX_EDGE_TET1
#define HECMW_MAX_TSUF_LN24
#define HECMW_UCD_LABEL_TRI2
#define HECMW_MAX_EDGE_PTQ1
#define HECMW_MAX_NODE_TRI1
#define HECMW_MAX_TSUF_LN46
#define HECMW_MAX_TSUF_JTB1
#define HECMW_MAX_SURF_TRI1
#define HECMW_MAX_NODE_PYR1
#define HECMW_GEOFEM_ETYPE_JTT1
#define HECMW_MAX_SURF_LN16
#define HECMW_MAX_NODE_LN35
#define HECMW_UCD_LABEL_TET1_4
#define HECMW_UCD_LABEL_LN11
#define HECMW_ETYPE_TRI1
#define HECMW_SHAPE_TETRA
#define HECMW_MAX_QSUF_LN15
#define HECMW_MAX_SURF_MSQ2
#define HECMW_MAX_SURF_BEM2
#define HECMW_ETYPE_SHT6
#define HECMW_MAX_QSUF_PTT2
#define HECMW_MESH_ETYPE_LN43
#define HECMW_ETYPE_LN41
#define HECMW_MAX_SURF_ROD2
#define HECMW_MAX_TSUF_LN62
#define HECMW_MAX_SURF_PTQ2
#define HECMW_MESH_ETYPE_MSQ2
#define HECMW_MAX_SURF_PRI2
#define HECMW_GEOFEM_ETYPE_PRI2
#define HECMW_ETYPE_ROD2
#define HECMW_MESH_ETYPE_LN54
#define HECMW_UCD_LABEL_HEX1_4
#define HECMW_ETYPE_ROD31
#define HECMW_MAX_TSUF_LN16
#define HECMW_UCD_LABEL_QUA1
#define HECMW_UCD_LABEL_MST1
#define HECMW_MAX_NODE_LN54
#define HECMW_MAX_QSUF_SPGDPT1
#define HECMW_GEOFEM_ETYPE_ROD1
#define HECMW_MAX_SURF_SHT6
#define HECMW_UCD_LABEL_LN65
#define HECMW_MAX_NODE_HEX1_4
#define HECMW_MAX_NODE_HEX2
#define HECMW_MESH_ETYPE_TRI2
#define HECMW_UCD_LABEL_SHT2
#define HECMW_MAX_QSUF_LN65
#define HECMW_MAX_EDGE_LN22
#define HECMW_MAX_NODE_LN62
#define HECMW_MAX_SURF_JTQ1
#define HECMW_MAX_TSUF_LN54
#define HECMW_ETYPE_HEX1
#define HECMW_MAX_NODE_QUA2
#define HECMW_MAX_NODE_LN36
#define HECMW_UCD_LABEL_HEX2
#define HECMW_MAX_EDGE_LN66
#define HECMW_ETYPE_JTT1
#define HECMW_ETYPE_ROD1
#define HECMW_MAX_SURF_HEX2
#define HECMW_MAX_QSUF_LN35
#define HECMW_UCD_LABEL_LN51
#define HECMW_MAX_QSUF_JTT2
#define HECMW_MAX_TSUF_LN11
#define HECMW_MESH_ETYPE_PTT1
#define HECMW_MAX_TSUF_LN25
#define HECMW_MESH_ETYPE_SHQ3
#define HECMW_MAX_TSUF_JTQ1
#define HECMW_MAX_TSUF_BEM1
#define HECMW_MAX_NODE_TRI2
#define HECMW_UCD_LABEL_MST2
#define HECMW_MAX_TSUF_TRI2
#define HECMW_MAX_TSUF_LN45
#define HECMW_MAX_QSUF_JTQ2
#define HECMW_MAX_QSUF_LN51
#define HECMW_MAX_NODE_LN26
#define HECMW_MAX_TSUF_LN63
#define HECMW_ETYPE_LN62
#define HECMW_GEOFEM_ETYPE_JTT2
#define HECMW_MESH_ETYPE_ROD2
#define HECMW_ETYPE_LN45
#define HECMW_MAX_QSUF_LN33
#define HECMW_MAX_TSUF_LN14
#define HECMW_MAX_EDGE_TRI1
#define HECMW_MAX_SURF_LN42
#define HECMW_UCD_LABEL_BEM2
#define HECMW_MAX_TSUF_QUA2
#define HECMW_UCD_LABEL_PRI1
#define HECMW_MAX_NODE_TET1_4
#define HECMW_MAX_QSUF_SHT1
#define HECMW_MAX_SURF_LN43
#define HECMW_MESH_ETYPE_HEX2
#define HECMW_MESH_ETYPE_LN21
#define HECMW_MAX_QSUF_LN22
#define HECMW_MAX_EDGE_LN25
#define HECMW_MAX_NODE_LN15
#define HECMW_MAX_NODE_LN31
#define HECMW_MAX_NODE_LN13
#define HECMW_ETYPE_JTQ1
#define HECMW_VTK_SHAPE_TRI
#define HECMW_ETYPE_BEM1
#define HECMW_UCD_LABEL_LN21
#define HECMW_MESH_ETYPE_PTT2
#define HECMW_MAX_QSUF_LN36
#define HECMW_MAX_SURF_JTT2
#define HECMW_MAX_SURF_TET1
#define HECMW_MAX_SURF_LN46
#define HECMW_MAX_NODE_LN46
#define HECMW_MESH_ETYPE_SHT2
#define HECMW_MESH_ETYPE_SHQ2
#define HECMW_VTK_SHAPE_PYRAM
#define HECMW_UCD_LABEL_JTT1
#define HECMW_CLASS_LINE
#define HECMW_GEOFEM_ETYPE_TET1_4
#define HECMW_ETYPE_QUA1
#define HECMW_MAX_SURF_LN35
#define HECMW_MAX_NODE_LN63
#define HECMW_SHAPE_TRI
#define HECMW_MAX_NODE_LN55
#define HECMW_ETYPE_BEM2
#define HECMW_ETYPE_SHQ8
#define HECMW_MAX_EDGE_JTQ1
#define HECMW_MAX_EDGE_LN21
#define HECMW_MESH_ETYPE_LN65
#define HECMW_MESH_ETYPE_BEM3
#define HECMW_MAX_EDGE_PTT1
#define HECMW_MAX_NODE_PTT2
#define HECMW_MAX_SURF_SHQ1
#define HECMW_MAX_QSUF_MSQ2
#define HECMW_MAX_QSUF_LN62
#define HECMW_ETYPE_LN35
#define HECMW_SHAPE_HEXA
#define HECMW_MAX_NODE_ROD1
#define HECMW_MAX_SURF_LN66
#define HECMW_MAX_SURF_LN23
#define HECMW_MAX_TSUF_PRI1
#define HECMW_MAX_SURF_LN65
#define HECMW_MAX_QSUF_LN53
#define HECMW_ETYPE_LN63
#define HECMW_MAX_QSUF_TET1
#define HECMW_UCD_LABEL_LN42
#define HECMW_ETYPE_LN25
#define HECMW_MAX_EDGE_LN12
#define HECMW_MAX_NODE_SHQ3
#define HECMW_ETYPE_PYR2
#define HECMW_MAX_SURF_LN54
#define HECMW_MAX_QSUF_TET1_4
#define HECMW_MAX_NODE_SHQ1
#define HECMW_MAX_EDGE_SHT1
#define HECMW_MAX_EDGE_LN54
#define HECMW_MAX_SURF_LN56
#define HECMW_GEOFEM_ETYPE_SHQ1
#define HECMW_MESH_ETYPE_JTQ2
#define HECMW_UCD_LABEL_LN22
#define HECMW_UCD_LABEL_TET1
#define HECMW_ETYPE_LN36
#define HECMW_MAX_SURF_LN51
#define HECMW_UCD_LABEL_LN52
#define HECMW_MAX_TSUF_LN35
#define HECMW_MAX_SURF_LN33
#define HECMW_MAX_NODE_LN44
#define HECMW_MAX_SURF_SHQ2
#define HECMW_UCD_LABEL_LN12
#define HECMW_ETYPE_TET1
#define HECMW_MAX_TSUF_LN33
#define HECMW_MAX_NODE_LN24
#define HECMW_MAX_TSUF_LN15
#define HECMW_MAX_TSUF_LN23
#define HECMW_ETYPE_LN52
#define HECMW_MAX_SURF_LN31
#define HECMW_MAX_QSUF_LN26
#define HECMW_MAX_QSUF_LN61
#define HECMW_UCD_LABEL_LN54
#define HECMW_GEOFEM_ETYPE_HEX1
#define HECMW_MAX_QSUF_LN46
#define HECMW_VTK_SHAPE_LINE
#define HECMW_MAX_EDGE_LN51
#define HECMW_ETYPE_LN16
#define HECMW_ETYPE_HEX1_4
#define HECMW_MAX_QSUF_LN13
#define HECMW_ETYPE_LN12
#define HECMW_ETYPE_SHQ3
#define HECMW_MAX_QSUF_HEX1_4
#define HECMW_MAX_NODE_SHQ8
#define HECMW_ETYPE_MSQ1
#define HECMW_UCD_LABEL_JTQ1
#define HECMW_UCD_LABEL_ROD31
#define HECMW_GEOFEM_ETYPE_SHT1
#define HECMW_MAX_QSUF_PTQ1
#define HECMW_MAX_NODE_LN21
#define HECMW_UCD_LABEL_PYR2
#define HECMW_MESH_ETYPE_PRI2
#define HECMW_MAX_QSUF_BEM2
#define HECMW_ETYPE_TET22
#define HECMW_MAX_TSUF_LN52
#define HECMW_GEOFEM_ETYPE_QUA2
#define HECMW_MAX_EDGE_PYR1
#define HECMW_MAX_EDGE_LN31
#define HECMW_MESH_ETYPE_LN25
#define HECMW_UCD_LABEL_LN63
#define HECMW_MESH_ETYPE_LN33
#define HECMW_MAX_EDGE_LN53
#define HECMW_GEOFEM_ETYPE_ROD2
#define HECMW_MAX_NODE_SPGDPT1
#define HECMW_MAX_SURF_BEM1
#define HECMW_MAX_NODE_MST1
#define HECMW_MESH_ETYPE_LN24
#define HECMW_GEOFEM_ETYPE_TET1
#define HECMW_MAX_EDGE_LN62
#define HECMW_MAX_QSUF_LN66
#define HECMW_MAX_EDGE_SPGDPT1
#define HECMW_MESH_ETYPE_JTT1
#define HECMW_MAX_SURF_MST2
#define HECMW_MAX_SURF_PTT1
#define HECMW_MAX_EDGE_ROD1
#define HECMW_MAX_SURF_LN36
#define HECMW_UCD_LABEL_LN13
#define HECMW_MAX_NODE_LN56
#define HECMW_MAX_QSUF_SHT6
#define HECMW_MAX_EDGE_LN14
#define HECMW_MAX_NODE_LN51
#define HECMW_ETYPE_LN23
#define HECMW_MAX_EDGE_LN45
#define HECMW_MAX_NODE_JTQ2
#define HECMW_UCD_LABEL_PTQ1
#define HECMW_UCD_LABEL_LN15
#define HECMW_MAX_EDGE_LN13
#define HECMW_MESH_ETYPE_LN36
#define HECMW_MAX_SURF_QUA2
#define HECMW_UCD_LABEL_LN33
#define HECMW_UCD_LABEL_LN31
#define HECMW_SHAPE_LINE
#define HECMW_MESH_ETYPE_LN62
#define HECMW_UCD_LABEL_LN24
#define HECMW_MESH_ETYPE_ROD1
#define HECMW_UCD_LABEL_LN41
#define HECMW_MAX_EDGE_HEX2
#define HECMW_VTK_SHAPE_TETRA2
#define HECMW_MAX_SURF_TRI2
#define HECMW_MAX_TSUF_LN42
#define HECMW_MAX_SURF_LN63
#define HECMW_GEOFEM_ETYPE_TRI1
#define HECMW_MAX_EDGE_MST1
#define HECMW_ETYPE_HEX2
#define HECMW_MAX_NODE_LN22
#define HECMW_MAX_TSUF_MST2
#define HECMW_MESH_ETYPE_LN12
#define HECMW_VTK_SHAPE_PRISM
#define HECMW_MAX_TSUF_LN51
#define HECMW_UCD_LABEL_TET2
#define HECMW_MAX_SURF_LN52
#define HECMW_GEOFEM_ETYPE_PRI1
#define HECMW_MAX_TSUF_HEX1
#define HECMW_MAX_EDGE_LN33
#define HECMW_UCD_LABEL_SHQ8
#define HECMW_ETYPE_TRI2
#define HECMW_MAX_TSUF_LN43
#define HECMW_MAX_QSUF_PYR1
#define HECMW_MAX_EDGE_LN63
#define HECMW_MESH_ETYPE_LN46
#define HECMW_ETYPE_PTT2
#define HECMW_GEOFEM_ETYPE_MST2
#define HECMW_ETYPE_LN31
#define HECMW_MAX_SURF_LN44
#define HECMW_MAX_TSUF_LN61
#define HECMW_MAX_EDGE_PTT2
#define HECMW_MAX_NODE_MSQ2
#define HECMW_MAX_EDGE_TET2
#define HECMW_MAX_EDGE_SHQ1
#define HECMW_UCD_LABEL_LN56
#define HECMW_MAX_QSUF_PTT1
#define HECMW_MAX_QSUF_QUA2
#define HECMW_UCD_LABEL_LN34
#define HECMW_MAX_EDGE_JTT1
#define HECMW_MAX_NODE_LN25
#define HECMW_MAX_TSUF_LN26
#define HECMW_MAX_TSUF_PRI2
#define HECMW_MAX_QSUF_ROD1
#define HECMW_MAX_SURF_HEX1_4
#define HECMW_MAX_TSUF_PTQ2
#define HECMW_MAX_EDGE_HEX1
#define HECMW_MAX_SURF_LN14
#define HECMW_UCD_LABEL_HEX1
#define HECMW_MAX_NODE_JTT2
#define HECMW_MAX_EDGE_SHT6
#define HECMW_UCD_LABEL_LN43
#define HECMW_MAX_SURF_BEM3
#define HECMW_UCD_LABEL_LN62
#define HECMW_ETYPE_LN21
#define HECMW_MAX_NODE_JTB1
#define HECMW_MESH_ETYPE_LN42
#define HECMW_ETYPE_PTQ2
#define HECMW_ETYPE_LN56
#define HECMW_MAX_SURF_PYR2
#define HECMW_MAX_SURF_TET2
#define HECMW_MAX_QSUF_SHQ1
#define HECMW_MAX_EDGE_LN46
#define HECMW_MESH_ETYPE_LN15
#define HECMW_MAX_TSUF_TET1
#define HECMW_ETYPE_LN44
#define HECMW_GEOFEM_ETYPE_JTQ1
#define HECMW_MAX_EDGE_LN65
#define HECMW_MAX_QSUF_PRI1
#define HECMW_MAX_TSUF_LN34
#define HECMW_ETYPE_MST2
#define HECMW_MAX_SURF_MSQ1
#define HECMW_MAX_QSUF_LN43
#define HECMW_GEOFEM_ETYPE_JTB1
#define HECMW_MAX_EDGE_ROD2
#define HECMW_UCD_LABEL_LN45
#define HECMW_ETYPE_SHQ2
#define HECMW_MAX_NODE_SHT1
#define HECMW_SHAPE_PRISM
#define HECMW_ETYPE_LN14
#define HECMW_UCD_LABEL_BEM1
#define HECMW_MAX_EDGE_TRI2
#define HECMW_MAX_NODE_JTQ1
#define HECMW_MESH_ETYPE_HEX1
#define HECMW_UCD_LABEL_LN35
#define HECMW_MESH_ETYPE_LN52
int HECMW_get_etype_UTIL2HECMW(int etype)
Definition: hecmw_etype.c:10
int hecmw_is_etype_link_if_(int *etype)
Definition: hecmw_etype.c:2212
int hecmw_is_etype_patch_if_(int *etype)
Definition: hecmw_etype.c:2239
int HECMW_get_max_qsuf(int etype)
Definition: hecmw_etype.c:1067
int hecmw_is_etype_interface_if(int *etype)
Definition: hecmw_etype.c:2184
int HECMW_is_etype_interface(int etype)
Definition: hecmw_etype.c:1946
int hecmw_get_max_node_if(int *etype)
Definition: hecmw_etype.c:2152
int HECMW_IS_ETYPE_SMOOTHING_IF(int *etype)
Definition: hecmw_etype.c:2246
int hecmw_is_etype_link_if(int *etype)
Definition: hecmw_etype.c:2211
int hecmw_get_max_node_if__(int *etype)
Definition: hecmw_etype.c:2154
int HECMW_get_max_node(int etype)
Definition: hecmw_etype.c:413
int HECMW_IS_ETYPE_33STRUCT_IF(int *etype)
Definition: hecmw_etype.c:2225
int hecmw_is_etype_rod_if__(int *etype)
Definition: hecmw_etype.c:2159
int HECMW_get_max_surf(int etype)
Definition: hecmw_etype.c:743
int hecmw_is_etype_beam_if(int *etype)
Definition: hecmw_etype.c:2197
int hecmw_is_etype_smoothing_if__(int *etype)
Definition: hecmw_etype.c:2245
int hecmw_is_etype_33struct_if(int *etype)
Definition: hecmw_etype.c:2216
int hecmw_is_etype_shell_if(int *etype)
Definition: hecmw_etype.c:2202
int hecmw_is_etype_solid_if(int *etype)
Definition: hecmw_etype.c:2175
int hecmw_is_etype_33struct_if_(int *etype)
Definition: hecmw_etype.c:2219
int HECMW_is_etype_33struct(int etype)
Definition: hecmw_etype.c:2030
int hecmw_is_etype_truss_if_(int *etype)
Definition: hecmw_etype.c:2230
int hecmw_is_etype_smoothing_if_(int *etype)
Definition: hecmw_etype.c:2244
int HECMW_GET_MAX_NODE_IF(int *etype)
Definition: hecmw_etype.c:2155
int HECMW_is_etype_link(int etype)
Definition: hecmw_etype.c:1987
int HECMW_is_etype_surface(int etype)
Definition: hecmw_etype.c:1913
int HECMW_IS_ETYPE_SURFACE_IF(int *etype)
Definition: hecmw_etype.c:2171
int HECMW_get_etype_GeoFEM2HECMW(int etype)
Definition: hecmw_etype.c:344
int hecmw_is_etype_shell_if__(int *etype)
Definition: hecmw_etype.c:2206
int HECMW_is_etype_truss(int etype)
Definition: hecmw_etype.c:2040
int hecmw_is_etype_beam_if__(int *etype)
Definition: hecmw_etype.c:2199
int hecmw_is_etype_smoothing_if(int *etype)
Definition: hecmw_etype.c:2243
char * HECMW_get_ucd_label(int etype)
Definition: hecmw_etype.c:1230
int hecmw_is_etype_truss_if__(int *etype)
Definition: hecmw_etype.c:2233
int hecmw_is_etype_surface_if_(int *etype)
Definition: hecmw_etype.c:2165
int hecmw_is_etype_solid_if__(int *etype)
Definition: hecmw_etype.c:2179
int hecmw_is_etype_surface_if__(int *etype)
Definition: hecmw_etype.c:2168
int HECMW_get_etype_HECMW2UTIL(int etype)
Definition: hecmw_etype.c:177
int HECMW_get_max_edge(int etype)
Definition: hecmw_etype.c:580
int hecmw_is_etype_patch_if(int *etype)
Definition: hecmw_etype.c:2238
int hecmw_is_etype_interface_if__(int *etype)
Definition: hecmw_etype.c:2190
int HECMW_IS_ETYPE_BEAM_IF(int *etype)
Definition: hecmw_etype.c:2200
int HECMW_get_etype_vtk_shape(int etype)
Definition: hecmw_etype.c:1731
int HECMW_get_etype_shape(int etype)
Definition: hecmw_etype.c:1564
int hecmw_is_etype_shell_if_(int *etype)
Definition: hecmw_etype.c:2203
int HECMW_IS_ETYPE_INTERFACE_IF(int *etype)
Definition: hecmw_etype.c:2193
int HECMW_IS_ETYPE_SHELL_IF(int *etype)
Definition: hecmw_etype.c:2209
int HECMW_is_etype_patch(int etype)
Definition: hecmw_etype.c:2048
int HECMW_is_etype_beam(int etype)
Definition: hecmw_etype.c:1963
int hecmw_is_etype_rod_if_(int *etype)
Definition: hecmw_etype.c:2158
int hecmw_is_etype_truss_if(int *etype)
Definition: hecmw_etype.c:2229
int hecmw_is_etype_rod_if(int *etype)
Definition: hecmw_etype.c:2157
int HECMW_IS_ETYPE_SOLID_IF(int *etype)
Definition: hecmw_etype.c:2182
int HECMW_is_etype_solid(int etype)
Definition: hecmw_etype.c:1925
int hecmw_is_etype_surface_if(int *etype)
Definition: hecmw_etype.c:2162
int HECMW_IS_ETYPE_ROD_IF(int *etype)
Definition: hecmw_etype.c:2160
int hecmw_is_etype_interface_if_(int *etype)
Definition: hecmw_etype.c:2187
int HECMW_IS_ETYPE_LINK_IF(int *etype)
Definition: hecmw_etype.c:2214
int HECMW_is_etype_shell(int etype)
Definition: hecmw_etype.c:1973
int HECMW_is_etype_smoothing(int etype)
Definition: hecmw_etype.c:2059
int hecmw_get_max_node_if_(int *etype)
Definition: hecmw_etype.c:2153
int HECMW_get_max_tsuf(int etype)
Definition: hecmw_etype.c:906
int hecmw_is_etype_patch_if__(int *etype)
Definition: hecmw_etype.c:2240
int hecmw_is_etype_solid_if_(int *etype)
Definition: hecmw_etype.c:2176
int hecmw_is_etype_beam_if_(int *etype)
Definition: hecmw_etype.c:2198
const int * HECMW_get_surf_nodes(int etype, int sid, int *surf_etype)
Definition: hecmw_etype.c:2068
int HECMW_IS_ETYPE_TRUSS_IF(int *etype)
Definition: hecmw_etype.c:2236
int HECMW_get_etype_class(int etype)
Definition: hecmw_etype.c:1397
int HECMW_IS_ETYPE_PATCH_IF(int *etype)
Definition: hecmw_etype.c:2241
int HECMW_is_etype_rod(int etype)
Definition: hecmw_etype.c:1904
int hecmw_is_etype_link_if__(int *etype)
Definition: hecmw_etype.c:2213
int hecmw_is_etype_33struct_if__(int *etype)
Definition: hecmw_etype.c:2222
#define NULL
#define HECMW_assert(cond)
Definition: hecmw_util.h:40