74
75
76
77#include "implicit_f.inc"
78
79
80
81#include "mvsiz_p.inc"
82
83
84
85 INTEGER, INTENT(IN) :: ISMSTR
86 INTEGER ICP,NEL,I_SH,IDEGE(*),ISEL_V
87
89 . sig(nel,6),
90 . px1(*), px2(*), px3(*), px4(*),
91 . py1(*), py2(*), py3(*), py4(*),
92 . pz1(*), pz2(*), pz3(*), pz4(*),
93 . px5(*), px6(*), px7(*), px8(*),
94 . py5(*), py6(*), py7(*), py8(*),
95 . pz5(*), pz6(*), pz7(*), pz8(*),
96 . bxy1(*),bxy2(*),bxy3(*),bxy4(*),
97 . bxy5(*),bxy6(*),bxy7(*),bxy8(*),
98 . byx1(*),byx2(*),byx3(*),byx4(*),
99 . byx5(*),byx6(*),byx7(*),byx8(*),
100 . bxz1(*),bxz2(*),bxz3(*),bxz4(*),
101 . bxz5(*),bxz6(*),bxz7(*),bxz8(*),
102 . bzx1(*),bzx2(*),bzx3(*),bzx4(*),
103 . bzx5(*),bzx6(*),bzx7(*),bzx8(*),
104 . byz1(*),byz2(*),byz3(*),byz4(*),
105 . byz5(*),byz6(*),byz7(*),byz8(*),
106 . bzy1(*),bzy2(*),bzy3(*),bzy4(*),
107 . bzy5(*),bzy6(*),bzy7(*),bzy8(*),
108 . bxx1(*),bxx2(*),bxx3(*),bxx4(*),
109 . bxx5(*),bxx6(*),bxx7(*),bxx8(*),
110 . byy1(*),byy2(*),byy3(*),byy4(*),
111 . byy5(*),byy6(*),byy7(*),byy8(*),
112 . bzz1(*),bzz2(*),bzz3(*),bzz4(*),
113 . bzz5(*),bzz6(*),bzz7(*),bzz8(*),
114 . pxy1(*),pxy2(*),pxy3(*),pxy4(*),
115 . pxy5(*),pxy6(*),pxy7(*),pxy8(*),
116 . pyx1(*),pyx2(*),pyx3(*),pyx4(*),
117 . pyx5(*),pyx6(*),pyx7(*),pyx8(*),
118 . pxz1(*),pxz2(*),pxz3(*),pxz4(*),
119 . pxz5(*),pxz6(*),pxz7(*),pxz8(*),
120 . pzx1(*),pzx2(*),pzx3(*),pzx4(*),
121 . pzx5(*),pzx6(*),pzx7(*),pzx8(*),
122 . pyz1(*),pyz2(*),pyz3(*),pyz4(*),
123 . pyz5(*),pyz6(*),pyz7(*),pyz8(*),
124 . pzy1(*),pzy2(*),pzy3(*),pzy4(*),
125 . pzy5(*),pzy6(*),pzy7(*),pzy8(*),
126 . f11(*),f21(*),f31(*),f12(*),f22(*),f32(*),
127 . f13(*),f23(*),f33(*),f14(*),f24(*),f34(*),
128 . f15(*),f25(*),f35(*),f16(*),f26(*),f36(*),
129 . f17(*),f27(*),f37(*),f18(*),f28(*),f38(*),
130 . vol(*),qvis(*),jfac(*),sig_a(mvsiz,3)
131 my_real,
DIMENSION(MVSIZ,6),
INTENT(INOUT) :: svis
132
133
134
135 INTEGER I, J,IB
136
138 . s1(mvsiz), s2(mvsiz), s3(mvsiz),
139 . s4(mvsiz), s5(mvsiz), s6(mvsiz),
140 . p(mvsiz),coef,fvol
141
142 IF (icp==1.AND.(ismstr==10.OR.ismstr==12)) THEN
143 DO i=1,nel
144 fvol=jfac(i)*vol(i)
145 s1(i)=(sig(i,1)+svis(i,1)-qvis(i))*fvol
146 s2(i)=(sig(i,2)+svis(i,2)-qvis(i))*fvol
147 s3(i)=(sig(i,3)+svis(i,3)-qvis(i))*fvol
148 s4(i)=(sig(i,4)+svis(i,4))*fvol
149 s5(i)=(sig(i,5)+svis(i,5))*fvol
150 s6(i)=(sig(i,6)+svis(i,6))*fvol
151 ENDDO
152 ELSEIF (icp==1) THEN
153 coef=zep3
154 DO i=1,nel
155 p(i) =coef*(sig(i,1)+sig(i,2)+sig(i,3)
156 . +svis(i,1)+svis(i,2)+svis(i,3))
157 IF (
idege(i)>10) p(i) =qvis(i)
158 s1(i)=(sig(i,1)+svis(i,1)-p(i))*vol(i)
159 s2(i)=(sig(i,2)+svis(i,2)-p(i))*vol(i)
160 s3(i)=(sig(i,3)+svis(i,3)-p(i))*vol(i)
161 s4(i)=(sig(i,4)+svis(i,4))*vol(i)
162 s5(i)=(sig(i,5)+svis(i,5))*vol(i)
163 s6(i)=(sig(i,6)+svis(i,6))*vol(i)
164 ENDDO
165 ELSE
166 DO i=1,nel
167 s1(i)=(sig(i,1)+svis(i,1)-qvis(i))*vol(i)
168 s2(i)=(sig(i,2)+svis(i,2)-qvis(i))*vol(i)
169 s3(i)=(sig(i,3)+svis(i,3)-qvis(i))*vol(i)
170 s4(i)=(sig(i,4)+svis(i,4))*vol(i)
171 s5(i)=(sig(i,5)+svis(i,5))*vol(i)
172 s6(i)=(sig(i,6)+svis(i,6))*vol(i)
173
174
175 ENDDO
176 IF (isel_v>0) THEN
177 DO i=1,nel
178 s1(i)=s1(i)+sig_a(i,1)*vol(i)
179 s2(i)=s2(i)+sig_a(i,2)*vol(i)
180 s3(i)=s3(i)+sig_a(i,3)*vol(i)
181 ENDDO
182 ENDIF
183 ENDIF
184 IF (i_sh==0) THEN
185 IF (icp==11) THEN
186 DO i=1,nel
187 f11(i)=f11(i)-(s1(i)*bxx1(i)+s4(i)*py1(i)+s6(i)*pz1(i))
188 . -(s2(i)*bxy1(i)+s3(i)*bxz1(i))
189 f21(i)=f21(i)-(s2(i)*byy1(i)+s4(i)*px1(i)+s5(i)*pz1(i))
190 . -(s1(i)*byx1(i)+s3(i)*byz1(i))
191 f31(i)=f31(i)-(s3(i)*bzz1(i)+s6(i)*px1(i)+s5(i)*py1(i))
192 . -(s1(i)*bzx1(i)+s2(i)*bzy1(i))
193 f12(i)=f12(i)-(s1(i)*bxx2(i)+s4(i)*py2(i)+s6(i)*pz2(i))
194 . -(s2(i)*bxy2(i)+s3(i)*bxz2(i))
195 f22(i)=f22(i)-(s2(i)*byy2(i)+s4(i)*px2(i)+s5(i)*pz2(i))
196 . -(s1(i)*byx2(i)+s3(i)*byz2(i))
197 f32(i)=f32(i)-(s3(i)*bzz2(i)+s6(i)*px2(i)+s5(i)*py2(i))
198 . -(s1(i)*bzx2(i)+s2(i)*bzy2(i))
199 f13(i)=f13(i)-(s1(i)*bxx3(i)+s4(i)*py3(i)+s6(i)*pz3(i))
200 . -(s2(i)*bxy3(i)+s3(i)*bxz3(i))
201 f23(i)=f23(i)-(s2(i)*byy3(i)+s4(i)*px3(i)+s5(i)*pz3(i))
202 . -(s1(i)*byx3(i)+s3(i)*byz3(i))
203 f33(i)=f33(i)-(s3(i)*bzz3(i)+s6(i)*px3(i)+s5(i)*py3(i))
204 . -(s1(i)*bzx3(i)+s2(i)*bzy3(i))
205 f14(i)=f14(i)-(s1(i)*bxx4(i)+s4(i)*py4(i)+s6(i)*pz4(i))
206 . -(s2(i)*bxy4(i)+s3(i)*bxz4(i))
207 f24(i)=f24(i)-(s2(i)*byy4(i)+s4(i)*px4(i)+s5(i)*pz4(i))
208 . -(s1(i)*byx4(i)+s3(i)*byz4(i))
209 f34(i)=f34(i)-(s3(i)*bzz4(i)+s6(i)*px4(i)+s5(i)*py4(i))
210 . -(s1(i)*bzx4(i)+s2(i)*bzy4(i))
211 f15(i)=f15(i)-(s1(i)*bxx5(i)+s4(i)*py5(i)+s6(i)*pz5(i))
212 . -(s2(i)*bxy5(i)+s3(i)*bxz5(i))
213 f25(i)=f25(i)-(s2(i)*byy5(i)+s4(i)*px5(i)+s5(i)*pz5(i))
214 . -(s1(i)*byx5(i)+s3(i)*byz5(i))
215 f35(i)=f35(i)-(s3(i)*bzz5(i)+s6(i)*px5(i)+s5(i)*py5(i))
216 . -(s1(i)*bzx5(i)+s2(i)*bzy5(i))
217 f16(i)=f16(i)-(s1(i)*bxx6(i)+s4(i)*py6(i)+s6(i)*pz6(i))
218 . -(s2(i)*bxy6(i)+s3(i)*bxz6(i))
219 f26(i)=f26(i)-(s2(i)*byy6(i)+s4(i)*px6(i)+s5(i)*pz6(i))
220 . -(s1(i)*byx6(i)+s3(i)*byz6(i))
221 f36(i)=f36(i)-(s3(i)*bzz6(i)+s6(i)*px6(i)+s5(i)*py6(i))
222 . -(s1(i)*bzx6(i)+s2(i)*bzy6(i))
223 f17(i)=f17(i)-(s1(i)*bxx7(i)+s4(i)*py7(i)+s6(i)*pz7(i))
224 . -(s2(i)*bxy7(i)+s3(i)*bxz7(i))
225 f27(i)=f27(i)-(s2(i)*byy7(i)+s4(i)*px7(i)+s5(i)*pz7(i))
226 . -(s1(i)*byx7(i)+s3(i)*byz7(i))
227 f37(i)=f37(i)-(s3(i)*bzz7(i)+s6(i)*px7(i)+s5(i)*py7(i))
228 . -(s1(i)*bzx7(i)+s2(i)*bzy7(i))
229 f18(i)=f18(i)-(s1(i)*bxx8(i)+s4(i)*py8(i)+s6(i)*pz8(i))
230 . -(s2(i)*bxy8(i)+s3(i)*bxz8(i))
231 f28(i)=f28(i)-(s2(i)*byy8(i)+s4(i)*px8(i)+s5(i)*pz8(i))
232 . -(s1(i)*byx8(i)+s3(i)*byz8(i))
233 f38(i)=f38(i)-(s3(i)*bzz8(i)+s6(i)*px8(i)+s5(i)*py8(i))
234 . -(s1(i)*bzx8(i)+s2(i)*bzy8(i))
235 ENDDO
236 ELSE
237 DO i=1,nel
238 f11(i)=f11(i)-(s1(i)*px1(i)+s4(i)*py1(i)+s6(i)*pz1(i))
239 f21(i)=f21(i)-(s2(i)*py1(i)+s4(i)*px1(i)+s5(i)*pz1(i))
240 f31(i)=f31(i)-(s3(i)*pz1(i)+s6(i)*px1(i)+s5(i)*py1(i))
241 f12(i)=f12(i)-(s1(i)*px2(i)+s4(i)*py2(i)+s6(i)*pz2(i))
242 f22(i)=f22(i)-(s2(i)*py2(i)+s4(i)*px2(i)+s5(i)*pz2(i))
243 f32(i)=f32(i)-(s3(i)*pz2(i)+s6(i)*px2(i)+s5(i)*py2(i))
244 f13(i)=f13(i)-(s1(i)*px3(i)+s4(i)*py3(i)+s6(i)*pz3(i))
245 f23(i)=f23(i)-(s2(i)*py3(i)+s4(i)*px3(i)+s5(i)*pz3(i))
246 f33(i)=f33(i)-(s3(i)*pz3(i)+s6(i)*px3(i)+s5(i)*py3(i))
247 f14(i)=f14(i)-(s1(i)*px4(i)+s4(i)*py4(i)+s6(i)*pz4(i))
248 f24(i)=f24(i)-(s2(i)*py4(i)+s4(i)*px4(i)+s5(i)*pz4(i))
249 f34(i)=f34(i)-(s3(i)*pz4(i)+s6(i)*px4(i)+s5(i)*py4(i))
250 f15(i)=f15(i)-(s1(i)*px5(i)+s4(i)*py5(i)+s6(i)*pz5(i))
251 f25(i)=f25(i)-(s2(i)*py5(i)+s4(i)*px5(i)+s5(i)*pz5(i))
252 f35(i)=f35(i)-(s3(i)*pz5(i)+s6(i)*px5(i)+s5(i)*py5(i))
253 f16(i)=f16(i)-(s1(i)*px6(i)+s4(i)*py6(i)+s6(i)*pz6(i))
254 f26(i)=f26(i)-(s2(i)*py6(i)+s4(i)*px6(i)+s5(i)*pz6(i))
255 f36(i)=f36(i)-(s3(i)*pz6(i)+s6(i)*px6(i)+s5(i)*py6(i))
256 f17(i)=f17(i)-(s1(i)*px7(i)+s4(i)*py7(i)+s6(i)*pz7(i))
257 f27(i)=f27(i)-(s2(i)*py7(i)+s4(i)*px7(i)+s5(i)*pz7(i))
258 f37(i)=f37(i)-(s3(i)*pz7(i)+s6(i)*px7(i)+s5(i)*py7(i))
259 f18(i)=f18(i)-(s1(i)*px8(i)+s4(i)*py8(i)+s6(i)*pz8(i))
260 f28(i)=f28(i)-(s2(i)*py8(i)+s4(i)*px8(i)+s5(i)*pz8(i))
261 f38(i)=f38(i)-(s3(i)*pz8(i)+s6(i)*px8(i)+s5(i)*py8(i))
262 ENDDO
263 END IF
264
265 ELSE
266 IF (icp==11) THEN
267 DO i=1,nel
268 f11(i)=f11(i)-(s1(i)*bxx1(i)+s4(i)*pxy1(i)+s6(i)*pxz1(i))
269 . -(s2(i)*bxy1(i)+s3(i)*bxz1(i))
270 f21(i)=f21(i)-(s2(i)*byy1(i)+s4(i)*pyx1(i)+s5(i)*pyz1(i))
271 . -(s1(i)*byx1(i)+s3(i)*byz1(i))
272 f31(i)=f31(i)-(s3(i)*bzz1(i)+s6(i)*pzx1(i)+s5(i)*pzy1(i))
273 . -(s1(i)*bzx1(i)+s2(i)*bzy1(i))
274 f12(i)=f12(i)-(s1(i)*bxx2(i)+s4(i)*pxy2(i)+s6(i)*pxz2(i))
275 . -(s2(i)*bxy2(i)+s3(i)*bxz2(i))
276 f22(i)=f22(i)-(s2(i)*byy2(i)+s4(i)*pyx2(i)+s5(i)*pyz2(i))
277 . -(s1(i)*byx2(i)+s3(i)*byz2(i))
278 f32(i)=f32(i)-(s3(i)*bzz2(i)+s6(i)*pzx2(i)+s5(i)*pzy2(i))
279 .
280 f13(i)=f13(i)-(s1(i)*bxx3(i)+s4(i)*pxy3(i)+s6(i)*pxz3(i))
281 . -(s2(i)*bxy3(i)+s3(i)*bxz3(i))
282 f23(i)=f23(i)-(s2(i)*byy3(i)+s4(i)*pyx3(i)+s5(i)*pyz3(i))
283 . -(s1(i)*byx3(i)+s3(i)*byz3(i))
284 f33(i)=f33(i)-(s3(i)*bzz3(i)+s6(i)*pzx3(i)+s5(i)*pzy3(i))
285 . -(s1(i)*bzx3(i)+s2(i)*bzy3(i))
286 f14(i)=f14(i)-(s1(i)*bxx4(i)+s4(i)*pxy4(i)+s6(i)*pxz4(i))
287 . -(s2(i)*bxy4(i)+s3(i)*bxz4(i))
288 f24(i)=f24(i)-(s2(i)*byy4(i)+s4(i)*pyx4(i)+s5(i)*pyz4(i))
289 . -(s1(i)*byx4(i)+s3(i)*byz4(i))
290 f34(i)=f34(i)-(s3(i)*bzz4(i)+s6(i)*pzx4(i)+s5(i)*pzy4(i))
291 . -(s1(i)*bzx4(i)+s2(i)*bzy4(i))
292 f15(i)=f15(i)-(s1(i)*bxx5(i)+s4(i)*pxy5(i)+s6(i)*pxz5(i))
293 . -(s2(i)*bxy5(i)+s3(i)*bxz5(i))
294 f25(i)=f25(i)-(s2(i)*byy5(i)+s4(i)*pyx5(i)+s5(i)*pyz5(i))
295 . -(s1(i)*byx5(i)+s3(i)*byz5(i))
296 f35(i)=f35(i)-(s3(i)*bzz5(i)+s6(i)*pzx5(i)+s5(i)*pzy5(i))
297 . -(s1(i)*bzx5(i)+s2(i)*bzy5(i))
298 f16(i)=f16(i)-(s1(i)*bxx6(i)+s4(i)*pxy6(i)+s6(i)*pxz6(i))
299 . -(s2(i)*bxy6(i)+s3(i)*bxz6(i))
300 f26(i)=f26(i)-(s2(i)*byy6(i)+s4(i)*pyx6(i)+s5(i)*pyz6(i))
301 . -(s1(i)*byx6(i)+s3(i)*byz6(i))
302 f36(i)=f36(i)-(s3(i)*bzz6(i)+s6(i)*pzx6(i)+s5(i)*pzy6(i))
303 . -(s1(i)*bzx6(i)+s2(i)*bzy6(i))
304 f17(i)=f17(i)-(s1(i)*bxx7(i)+s4(i)*pxy7(i)+s6(i)*pxz7(i))
305 . -(s2(i)*bxy7(i)+s3(i)*bxz7(i))
306 f27(i)=f27(i)-(s2(i)*byy7(i)+s4(i)*pyx7(i)+s5(i)*pyz7(i))
307 . -(s1(i)*byx7(i)+s3(i)*byz7(i))
308 f37(i)=f37(i)-(s3(i)*bzz7(i)+s6(i)*pzx7(i)+s5(i)*pzy7(i))
309 . -(s1(i)*bzx7(i)+s2(i)*bzy7(i))
310 f18(i)=f18(i)-(s1(i)*bxx8(i)+s4(i)*pxy8(i)+s6(i)*pxz8(i))
311 . -(s2(i)*bxy8(i)+s3(i)*bxz8(i))
312 f28(i)=f28(i)-(s2(i)*byy8(i)+s4(i)*pyx8(i)+s5(i)*pyz8(i))
313 . -(s1(i)*byx8(i)+s3(i)*byz8(i))
314 f38(i)=f38(i)-(s3(i)*bzz8(i)+s6(i)*pzx8(i)+s5(i)*pzy8(i))
315 . -(s1(i)*bzx8(i)+s2(i)*bzy8(i))
316 ENDDO
317 ELSE
318 DO i=1,nel
319 f11(i)=f11(i)-(s1(i)*px1(i)+s4(i)*pxy1(i)+s6(i)*pxz1(i))
320 f21(i)=f21(i)-(s2(i)*py1(i)+s4(i)*pyx1(i)+s5(i)*pyz1(i))
321 f31(i)=f31(i)-(s3(i)*pz1(i)+s6(i)*pzx1(i)+s5(i)*pzy1(i))
322 f12(i)=f12(i)-(s1(i)*px2(i)+s4(i)*pxy2(i)+s6(i)*pxz2(i))
323 f22(i)=f22(i)-(s2(i)*py2(i)+s4(i)*pyx2(i)+s5(i)*pyz2(i))
324 f32(i)=f32(i)-(s3(i)*pz2(i)+s6(i)*pzx2(i)+s5(i)*pzy2(i))
325 f13(i)=f13(i)-(s1(i)*px3(i)+s4(i)*pxy3(i)+s6(i)*pxz3(i))
326 f23(i)=f23(i)-(s2(i)*py3(i)+s4(i)*pyx3(i)+s5(i)*pyz3(i))
327 f33(i)=f33(i)-(s3(i)*pz3(i)+s6(i)*pzx3(i)+s5(i)*pzy3(i))
328 f14(i)=f14(i)-(s1(i)*px4(i)+s4(i)*pxy4(i)+s6(i)*pxz4(i))
329 f24(i)=f24(i)-(s2(i)*py4(i)+s4(i)*pyx4(i)+s5(i)*pyz4(i))
330 f34(i)=f34(i)-(s3(i)*pz4(i)+s6(i)*pzx4(i)+s5(i)*pzy4(i))
331 f15(i)=f15(i)-(s1(i)*px5(i)+s4(i)*pxy5(i)+s6(i)*pxz5(i))
332 f25(i)=f25(i)-(s2(i)*py5(i)+s4(i)*pyx5(i)+s5(i)*pyz5(i))
333 f35(i)=f35(i)-(s3(i)*pz5(i)+s6(i)*pzx5(i)+s5(i)*pzy5(i))
334 f16(i)=f16(i)-(s1(i)*px6(i)+s4(i)*pxy6(i)+s6(i)*pxz6(i))
335 f26(i)=f26(i)-(s2(i)*py6(i)+s4(i)*pyx6(i)+s5(i)*pyz6(i))
336 f36(i)=f36(i)-(s3(i)*pz6(i)+s6(i)*pzx6(i)+s5(i)*pzy6(i))
337 f17(i)=f17(i)-(s1(i)*px7(i)+s4(i)*pxy7(i)+s6(i)*pxz7(i))
338 f27(i)=f27(i)-(s2(i)*py7(i)+s4(i)*pyx7(i)+s5(i)*pyz7(i))
339 f37(i)=f37(i)-(s3(i)*pz7(i)+s6(i)*pzx7(i)+s5(i)*pzy7(i))
340 f18(i)=f18(i)-(s1(i)*px8(i)+s4(i)*pxy8(i)+s6(i)*pxz8(i))
341 f28(i)=f28(i)-(s2(i)*py8(i)+s4(i)*pyx8(i)+s5(i)*pyz8(i))
342 f38(i)=f38(i)-(s3(i)*pz8(i)+s6(i)*pzx8(i)+s5(i)*pzy8(i))
343 ENDDO
344 IF (i_sh>1.OR.isel_v>0) THEN
345 DO i=1,nel
346 IF(
idege(i)>10) cycle
347 f11(i)=f11(i)-(s2(i)*bxy1(i)+s3(i)*bxz1(i))
348 f21(i)=f21(i)-(s1(i)*byx1(i)+s3(i)*byz1(i))
349 f31(i)=f31(i)-(s1(i)*bzx1(i)+s2(i)*bzy1(i))
350 f12(i)=f12(i)-(s2(i)*bxy2(i)+s3(i)*bxz2(i))
351 f22(i)=f22(i)-(s1(i)*byx2(i)+s3(i)*byz2(i))
352 f32(i)=f32(i)-(s1(i)*bzx2(i)+s2(i)*bzy2(i))
353 f13(i)=f13(i)-(s2(i)*bxy3(i)+s3(i)*bxz3(i))
354 f23(i)=f23(i)-(s1(i)*byx3(i)+s3(i)*byz3(i))
355 f33(i)=f33(i)-(s1(i)*bzx3(i)+s2(i)*bzy3(i))
356 f14(i)=f14(i)-(s2(i)*bxy4(i)+s3(i)*bxz4(i))
357 f24(i)=f24(i)-(s1(i)*byx4(i)+s3(i)*byz4(i))
358 f34(i)=f34(i)-(s1(i)*bzx4(i)+s2(i)*bzy4(i))
359 f15(i)=f15(i)-(s2(i)*bxy5(i)+s3(i)*bxz5(i))
360 f25(i)=f25(i)-(s1(i)*byx5(i)+s3(i)*byz5(i))
361 f35(i)=f35(i)-(s1(i)*bzx5(i)+s2(i)*bzy5(i))
362 f16(i)=f16(i)-(s2(i)*bxy6(i)+s3(i)*bxz6(i))
363 f26(i)=f26(i)-(s1(i)*byx6(i)+s3(i)*byz6(i))
364 f36(i)=f36(i)-(s1(i)*bzx6(i)+s2(i)*bzy6(i))
365 f17(i)=f17(i)-(s2(i)*bxy7(i)+s3(i)*bxz7(i))
366 f27(i)=f27(i)-(s1(i)*byx7(i)+s3(i)*byz7(i))
367 f37(i)=f37(i)-(s1(i)*bzx7(i)+s2(i)*bzy7(i))
368 f18(i)=f18(i)-(s2(i)*bxy8(i)+s3(i)*bxz8(i))
369 f28(i)=f28(i)-(s1(i)*byx8(i)+s3(i)*byz8(i))
370 f38(i)=f38(i)-(s1(i)*bzx8(i)+s2(i)*bzy8(i))
371 ENDDO
372 END IF
373 END IF
375
376 RETURN
if(complex_arithmetic) id
subroutine idege(x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, a, amax, fac, it4, it, indx, n_indx)