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