31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
48
49
50
51#include "implicit_f.inc"
52
53
54
55#include "com04_c.inc"
56
57
58
59 TYPE (SET_) :: CLAUSE
60
61
62
63 INTEGER ID,IE,EL,IP,EL_FIRST,EL_LAST,SIZE,IND,SZELMAX,I
64
65
66
67 IF (numels > 0) THEN
68 clause%NB_SOLID = numels
69 ALLOCATE( clause%SOLID(numels) )
70 DO i=1,numels
71 clause%SOLID(i) = i
72 ENDDO
73 ENDIF
74
75
76
77 IF (numelq > 0) THEN
78 clause%NB_QUAD = numelq
79 ALLOCATE( clause%QUAD(numelq) )
80 DO i=1,numelq
81 clause%QUAD(i) = i
82 ENDDO
83 ENDIF
84
85
86 IF (numelc > 0) THEN
87 clause%NB_SH4N = numelc
88 ALLOCATE( clause%SH4N(numelc) )
89 DO i=1,numelc
90 clause%SH4N(i) = i
91 ENDDO
92 ENDIF
93
94
95
96 IF (numeltg > 0) THEN
97 clause%NB_SH3N = numeltg
98 ALLOCATE( clause%SH3N(numeltg) )
99 DO i=1,numeltg
100 clause%SH3N(i) = i
101 ENDDO
102 ENDIF
103
104
105
106 IF (numeltria > 0) THEN
107 clause%NB_TRIA = numeltria
108 ALLOCATE( clause%TRIA(numeltria) )
109 DO i=1,numeltria
110 clause%TRIA(i) = i
111 ENDDO
112 ENDIF
113
114
115 IF (numelt > 0) THEN
116 clause%NB_TRUSS = numelt
117 ALLOCATE( clause%TRUSS(numelt) )
118 DO i=1,numelt
119 clause%TRUSS(i) = i
120 ENDDO
121 ENDIF
122
123
124
125 IF (numelp > 0) THEN
126 clause%NB_BEAM = numelp
127 ALLOCATE( clause%BEAM(numelp) )
128 DO i=1,numelp
129 clause%BEAM(i) = i
130 ENDDO
131 ENDIF
132
133
134 IF (numelr > 0) THEN
135 clause%NB_SPRING = numelr
136 ALLOCATE( clause%SPRING(numelr) )
137 DO i=1,numelr
138 clause%SPRING(i) = i
139 ENDDO
140 ENDIF
141
142
143 RETURN