32 1 PXC1, PXC2, PXC3, PXC4,
33 2 PYC1, PYC2, PYC3, PYC4,
34 3 PZC1, PZC2, PZC3, PZC4,
35 4 PX1H, PX2H, PX3H, PY1H,
36 5 PY2H, PY3H, PZ1H, PZ2H,
37 6 PZ3H, JI33, B1X, B1Y,
38 7 B2Y, B2X, B1122, B1221,
39 8 B2212, B1121, B1XH, B1YH,
40 9 B2XH, B2YH, B1122H, B1221H,
41 A B2212H, B1121H, DD, GG,
52#include
"implicit_f.inc"
63 INTEGER,
INTENT(IN) :: NEL
66 . PXC1(*), PXC2(*), PXC3(*), PXC4(*),
67 . PYC1(*), PYC2(*), PYC3(*), PYC4(*),
68 . PZC1(*), PZC2(*), PZC3(*), PZC4(*),
69 . PX1H(*), PX2H(*), PX3H(*),
70 . (*), PY2H(*), PY3H(*),
71 . PZ1H(*), PZ2H(*), PZ3H(*),
72 . JI33(*),B1X(MVSIZ,2),B1Y(MVSIZ
73(MVSIZ,2),B1YH(MVSIZ,2),B2XH(MVSIZ,2)
88 . PX1(MVSIZ),PX2(MVSIZ),PX3(MVSIZ),
89 . PX4(MVSIZ),PX5(MVSIZ),PX6(MVSIZ),
90 . PY1(MVSIZ),PY2(MVSIZ),PY3(MVSIZ),
91 . PY4(MVSIZ),PY5(MVSIZ),PY6(MVSIZ),
92 . PZ1(MVSIZ),PZ2(MVSIZ),PZ3(MVSIZ),
93 . PZ4(MVSIZ),PZ5(),PZ6(MVSIZ),
94 . PXY1(MVSIZ),PXY2(MVSIZ),PXY3(MVSIZ)
100),PZX3(MVSIZ),PZX4(MVSIZ),
101 . PZX5(MVSIZ),PZX6(MVSIZ),
102 . pyz1(mvsiz),pyz2(mvsiz),pyz3(mvsiz),pyz4(mvsiz),
103 . pyz5(mvsiz),pyz6(mvsiz),
104 . pzy1(mvsiz),pzy2(mvsiz),pzy3(mvsiz),pzy4(mvsiz),
105 . pzy5(mvsiz),pzy6(mvsiz),
106 . bxy1(mvsiz),bxy2(mvsiz),bxy3(mvsiz),bxy4(mvsiz),
107 . bxy5(mvsiz),bxy6(mvsiz),
108 . byx1(mvsiz),byx2(mvsiz),byx3(mvsiz),byx4(mvsiz),
109 . byx5(mvsiz),byx6(mvsiz),
110 . bxz1(mvsiz),bxz2(mvsiz),bxz3(mvsiz),bxz4(mvsiz),
111 . bxz5(mvsiz),bxz6(mvsiz),
112 . bzx1(mvsiz),bzx2(mvsiz),bzx3(mvsiz),bzx4(mvsiz),
113 . bzx5(mvsiz),bzx6(mvsiz),
114 . byz1(mvsiz),byz2(mvsiz),byz3(mvsiz),byz4(mvsiz),
115 . byz5(mvsiz),byz6(mvsiz),
116 . bzy1(mvsiz),bzy2(mvsiz),bzy3(mvsiz),bzy4(mvsiz
117 . bzy5(mvsiz),bzy6(mvsiz)
125 px1(i) = pxc1(i)-pxc4(i) + zi*(px1h(i)-pxc1(i))
126 px2(i) = pxc2(i)-pxc4(i) + zi*(px2h(i)-pxc2(i))
127 px3(i) = pxc3(i)-pxc4(i) + zi*(px3h(i)-pxc3(i))
128 px4(i) = pxc1(i)+pxc4(i) + zi*(px1h(i)+pxc1(i))
129 px5(i) = pxc2(i)+pxc4(i) + zi*(px2h(i)+pxc2(i))
130 px6(i) = pxc3(i)+pxc4(i) + zi*(px3h(i)+pxc3(i))
133 py1(i) = pyc1(i)-pyc4(i) + zi*(py1h(i)-pyc1(i))
134 py2(i) = pyc2(i)-pyc4(i) + zi*(py2h(i)-pyc2(i))
135 py3(i) = pyc3(i)-pyc4(i) + zi*(py3h(i)-pyc3(i))
136 py4(i) = pyc1(i)+pyc4(i) + zi*(py1h(i)+pyc1(i))
137 py5(i) = pyc2(i)+pyc4(i) + zi*(py2h(i)+pyc2(i))
138 py6(i) = pyc3(i)+pyc4(i) + zi*(py3h(i)+pyc3(i))
141 pz1(i) = pzc1(i)-pzc4(i) + zi*(pz1h(i)-pzc1(i))
142 pz2(i) = pzc2(i)-pzc4(i) + zi*(pz2h(i)-pzc2(i))
143 pz3(i) = pzc3(i)-pzc4(i) + zi*(pz3h(i)-pzc3(i))
144 pz4(i) = pzc1(i)+pzc4(i) + zi*(pz1h(i)+pzc1(i))
145 pz5(i) = pzc2(i)+pzc4(i) + zi*(pz2h(i)+pzc2(i))
146 pz6(i) = pzc3(i)+pzc4(i) + zi*(pz3h(i)+pzc3(i))
151 znu1 = znu/(one - nu(i))
152 bxy1(i) = -znu*px1h(i)
153 byx1(i) = znu*pyc1(i)
154 bxy2(i) = -znu*px2h(i)
155 byx2(i) = znu*pyc2(i)
156 bxy3(i) = -znu*px3h(i)
157 byx3(i) = znu*pyc3(i)
158 bxy4(i) = -znu*px1h(i)
159 byx4(i) = -znu*pyc1(i)
160 bxy5(i) = -znu*px2h(i)
161 byx5(i) = -znu*pyc2(i)
162 bxy6(i) = -znu*px3h(i)
163 byx6(i) = -znu*pyc3(i)
165 bxz1(i) = -znu*px1h(i)+znu1*pxc1(i)
166 bzx1(i) = znu1*pzc1(i)
167 bxz2(i) = -znu*px2h(i)+znu1*pxc2(i)
168 bzx2(i) = znu1*pzc2(i)
169 bxz3(i) = -znu*px3h(i)+znu1*pxc3(i)
170 bzx3(i) = znu1*pzc3(i)
171 bxz4(i) = -znu*px1h(i)-znu1*pxc1(i)
172 bzx4(i) = -znu1*pzc1(i)
173 bxz5(i) = -znu*px2h(i)-znu1*pxc2(i)
174 bzx5(i) = -znu1*pzc2(i)
175 bxz6(i) = -znu*px3h(i)-znu1*pxc3(i)
176 bzx6(i) = -znu1*pzc3(i)
178 byz1(i) = -znu1*py1h(i)+znu*pyc1(i)
179 bzy1(i) = -znu1*pz1h(i)
180 byz2(i) = -znu1*py2h(i)+znu*pyc2(i)
181 bzy2(i) = -znu1*pz2h(i)
182 byz3(i) = -znu1*py3h(i)+znu*pyc3(i)
183 bzy3(i) = -znu1*pz3h(i)
184 byz4(i) = -znu1*py1h(i)-znu*pyc1(i)
185 bzy4(i) = -znu1*pz1h(i)
186 byz5(i) = -znu1*py2h(i)-znu*pyc2(i)
187 bzy5(i) = -znu1*pz2h(i)
188 byz6(i) = -znu1*py3h(i)-znu*pyc3(i)
189 bzy6(i) = -znu1*pz3h(i)
198 pxz1(i) = -j2-b1x(i,1)+b1x(i,2)+ zi*(-b1xh(i,1)+b1xh(i,2))
199 pxz2(i) = -j3-b1221(i)-b1x(i,2)+ zi*(-b1221h(i)-b1xh(i,2))
200 pxz3(i) = -j3+b1122(i)+b1x(i,1)+ zi*(b1122h(i)+b1xh(i,1))
201 pxz4(i) = j2+b1x(i,1)-b1x(i,2) + zi*(b1xh(i,1)-b1xh(i,2))
202 pxz5(i) = j3+b1221(i)+b1x(i,2) + zi*(b1221h(i)+b1xh(i,2))
203 pxz6(i) = j3-b1122(i)-b1x(i,1) + zi*(-b1122h(i)-b1xh(i,1))
205 pyz1(i)= -j2+b2y(i,1)-b2y(i,2) + zi*(b2yh(i,1)-b2yh(i,2))
206 pyz2(i)= -j3+b1122(i)+b2y(i,2) + zi*(b1122h(i)+b2yh(i,2))
207 pyz3(i)= -j3-b1221(i)-b2y(i,1) + zi*(-b1221h(i)-b2yh(i,1))
208 pyz4(i)= j2-b2y(i,1)+b2y(i,2) + zi*(-b2yh(i,1)+b2yh(i,2))
209 pyz5(i)= j3-b1122(i)-b2y(i,2) + zi*(-b1122h(i)-b2yh(i,2))
210 pyz6(i)= j3+b1221(i)+b2y(i,1) + zi*( b1221h(i)+b2yh(i,1))
213 pyx1(i) = -b1y(i,1)+b1y(i,2)+zi*(-b1yh(i,1)+b1yh(i,2))
214 pyx2(i) = -b2212(i)-b1y(i,2)+zi*(-b2212h(i)-b1yh(i,2))
215 pyx3(i) = b2212(i)+b1y(i,1)+zi*(b2212h(i)+b1yh(i,1))
216 pyx4(i) = b1y(i,1)-b1y(i,2)+zi*(b1yh(i,1)-b1yh(i,2))
217 pyx5(i) = b2212(i)+b1y(i,2)+zi*(b2212h(i)+b1yh(i,2))
218 pyx6(i) = -b2212(i)-b1y(i,1)+zi*(-b2212h(i)-b1yh(i,1))
221 pxy1(i)= b2x(i,1)-b2x(i,2) +zi*(b2xh(i,1)-b2xh(i,2))
222 pxy2(i)= b1121(i)+b2x(i,2) +zi*(b1121h(i)+b2xh(i,2))
223 pxy3(i)= -b1121(i)-b2x(i,1)+zi*(-b1121h(i)-b2xh(i,1))
224 pxy4(i)= -b2x(i,1)+b2x(i,2)+zi*(-b2xh(i,1)+b2xh(i,2))
225 pxy5(i)=-b1121(i)-b2x(i,2) +zi*(-b1121h(i)-b2xh(i,2))
226 pxy6(i)= b1121(i)+b2x(i,1) +zi*( b1121h(i)+b2xh(i,1))
230 pzx1(i)= half*(pxc1(i) + zi*px1h(i))
231 pzx2(i)= half*(pxc2(i) + zi*px2h(i))
232 pzx3(i)= half*(pxc3(i) + zi*px3h(i
233 pzx4(i)= half*(pxc1(i) + zi*px1h(i))
234 pzx5(i)= half*(pxc2(i) + zi*px2h(i))
235 pzx6(i)= half*(pxc3(i) + zi*px3h(i))
237 pzy1(i)= half*(pyc1(i) + zi*py1h(i))
238 pzy2(i)= half*(pyc2(i) + zi*py2h(i))
239 pzy3(i)= half*(pyc3(i) + zi*py3h(i))
240 pzy4(i)= half*(pyc1(i) + zi*py1h(i))
241 pzy5(i)= half*(pyc2(i) + zi*py2h(i))
242 pzy6(i)= half*(pyc3(i) + zi*py3h(i))
246 CALL s8zkeb3(1,nel,px1, py1 ,pz1 ,px1, py1, pz1,
247 . bxy1, byx1 ,bxz1,bzx1 ,byz1,bzy1,
248 . bxy1, byx1 ,bxz1,bzx1 ,byz1,bzy1,dd
249 CALL s8zkeb3(1,nel,px2, py2 ,pz2 ,px2, py2, pz2,
250 . bxy2, byx2 ,bxz2,bzx2 ,byz2,bzy2,
251 . bxy2, byx2 ,bxz2,bzx2 ,byz2,bzy2,dd,k22,is)
252 CALL s8zkeb3(1,nel,px3, py3 ,pz3 ,px3, py3, pz3,
253 . bxy3, byx3 ,bxz3,bzx3 ,byz3,bzy3,
254 . bxy3, byx3 ,bxz3,bzx3 ,byz3,bzy3,dd,k33,is)
255 CALL s8zkeb3(1,nel,px4, py4 ,pz4 ,px4, py4, pz4,
256 . bxy4, byx4 ,bxz4,bzx4 ,byz4,bzy4,
257 . bxy4, byx4 ,bxz4,bzx4 ,byz4,bzy4,dd,k44,is
258 CALL s8zkeb3(1,nel,px5, py5 ,pz5 ,px5, py5, pz5,
259 . bxy5, byx5 ,bxz5,bzx5 ,byz5,bzy5,
260 . bxy5, byx5 ,bxz5,bzx5 ,byz5,bzy5,dd,k55,is)
261 CALL s8zkeb3(1,nel,px6, py6 ,pz6 ,px6, py6, pz6,
262 . bxy6, byx6 ,bxz6,bzx6 ,byz6,bzy6,
263 . bxy6, byx6 ,bxz6,bzx6 ,byz6,bzy6,dd,k66,is)
265 CALL s6ckeg3(1,nel,py1, px1 ,pxy1, pyx1 ,pxz1,pzx1 ,pyz1
266 . py1,px1,pxy1, pyx1 ,pxz1,pzx1 ,pyz1,pzy1,gg,k11,is)
267 CALL s6ckeg3(1,nel,py2, px2 ,pxy2, pyx2 ,pxz2,pzx2 ,pyz2,pzy2,
268 . py2,px2,pxy2, pyx2 ,pxz2,pzx2 ,pyz2,pzy2,gg,k22,is
269 CALL s6ckeg3(1,nel,py3, px3 ,pxy3, pyx3 ,pxz3,pzx3 ,pyz3,pzy3,
270 . py3,px3,pxy3, pyx3 ,pxz3,pzx3 ,pyz3,pzy3,gg,k33,is)
271 CALL s6ckeg3(1,nel,py4, px4 ,pxy4, pyx4 ,pxz4,pzx4 ,pyz4,pzy4,
272 . py4,px4,pxy4, pyx4 ,pxz4,pzx4 ,pyz4,pzy4,gg,k44,is)
273 CALL s6ckeg3(1,nel,py5, px5 ,pxy5, pyx5 ,pxz5,pzx5 ,pyz5,pzy5,
274 . py5,px5,pxy5, pyx5 ,pxz5,pzx5 ,pyz5,pzy5
275 CALL s6ckeg3(1,nel,py6, px6 ,pxy6, pyx6 ,pxz6,pzx6 ,pyz6,pzy6,
276 . py6,px6,pxy6, pyx6 ,pxz6,pzx6 ,pyz6,pzy6,gg,k66,is)
279 CALL s8zkeb3(1,nel,px1, py1 ,pz1 ,px2, py2, pz2,
280 . bxy1, byx1 ,bxz1,bzx1 ,byz1,bzy1,
281 . bxy2, byx2 ,bxz2,bzx2 ,byz2,bzy2,dd,k12,is)
282 CALL s8zkeb3(1,nel,px1, py1 ,pz1 ,px3, py3, pz3,
283 . bxy1, byx1 ,bxz1,bzx1 ,byz1,bzy1,
284 . bxy3, byx3 ,bxz3,bzx3 ,byz3,bzy3,dd,k13,is)
285 CALL s8zkeb3(1,nel,px1, py1 ,pz1 ,px4, py4, pz4,
286 . bxy1, byx1 ,bxz1,bzx1 ,byz1,bzy1,
287 . bxy4, byx4 ,bxz4,bzx4 ,byz4,bzy4,dd,k14,is)
288 CALL s8zkeb3(1,nel,px1, py1 ,pz1 ,px5, py5, pz5,
289 . bxy1, byx1 ,bxz1,bzx1 ,byz1,bzy1,
290 . bxy5, byx5 ,bxz5,bzx5 ,byz5,bzy5,dd,k15,is)
291 CALL s8zkeb3(1,nel,px1, py1 ,pz1 ,px6, py6, pz6,
292 . bxy1, byx1 ,bxz1,bzx1 ,byz1,bzy1,
293 . bxy6, byx6 ,bxz6,bzx6 ,byz6,bzy6,dd,k16,is)
294 CALL s8zkeb3(1,nel,px2, py2 ,pz2 ,px3, py3, pz3,
295 . bxy2, byx2 ,bxz2,bzx2 ,byz2,bzy2,
296 . bxy3, byx3 ,bxz3,bzx3 ,byz3,bzy3,dd,k23,is)
297 CALL s8zkeb3(1,nel,px2, py2 ,pz2 ,px4, py4, pz4,
298 . bxy2, byx2 ,bxz2,bzx2 ,byz2,bzy2,
299 . bxy4, byx4 ,bxz4,bzx4 ,byz4,bzy4,dd,k24,is)
300 CALL s8zkeb3(1,nel,px2, py2 ,pz2 ,px5, py5, pz5,
301 . bxy2, byx2 ,bxz2,bzx2 ,byz2,bzy2,
302 . bxy5, byx5 ,bxz5,bzx5 ,byz5,bzy5,dd,k25,is)
303 CALL s8zkeb3(1,nel,px2, py2 ,pz2 ,px6, py6, pz6,
304 . bxy2, byx2 ,bxz2,bzx2 ,byz2,bzy2,
305 . bxy6, byx6 ,bxz6,bzx6 ,byz6,bzy6,dd,k26,is)
306 CALL s8zkeb3(1,nel,px3, py3 ,pz3 ,px4, py4, pz4,
307 . bxy3, byx3 ,bxz3,bzx3 ,byz3,bzy3,
308 . bxy4, byx4 ,bxz4,bzx4 ,byz4,bzy4,dd,k34,is)
309 CALL s8zkeb3(1,nel,px3, py3 ,pz3 ,px5, py5, pz5,
310 . bxy3, byx3 ,bxz3,bzx3 ,byz3,bzy3,
311 . bxy5, byx5 ,bxz5,bzx5 ,byz5,bzy5,dd,k35,is)
312 CALL s8zkeb3(1,nel,px3, py3 ,pz3 ,px6, py6, pz6,
313 . bxy3, byx3 ,bxz3,bzx3 ,byz3,bzy3,
314 . bxy6, byx6 ,bxz6,bzx6 ,byz6,bzy6,dd,k36,is)
315 CALL s8zkeb3(1,nel,px4, py4 ,pz4 ,px5, py5, pz5,
316 . bxy4, byx4 ,bxz4,bzx4 ,byz4,bzy4,
317 . bxy5, byx5 ,bxz5,bzx5 ,byz5,bzy5,dd,k45,is)
318 CALL s8zkeb3(1,nel,px4, py4 ,pz4 ,px6, py6, pz6,
319 . bxy4, byx4 ,bxz4,bzx4 ,byz4,bzy4,
320 . bxy6, byx6 ,bxz6,bzx6 ,byz6,bzy6,dd,k46,is)
321 CALL s8zkeb3(1,nel,px5, py5 ,pz5 ,px6, py6, pz6,
322 . bxy5, byx5 ,bxz5,bzx5 ,byz5,bzy5,
323 . bxy6, byx6 ,bxz6,bzx6 ,byz6,bzy6,dd,k56,is)
325 CALL s6ckeg3(1,nel,py1, px1 ,pxy1, pyx1 ,pxz1,pzx1 ,pyz1,pzy1,
326 . py2,px2,pxy2, pyx2 ,pxz2,pzx2 ,pyz2,pzy2,gg,k12,is)
327 CALL s6ckeg3(1,nel,py1, px1 ,pxy1, pyx1 ,pxz1,pzx1 ,pyz1,pzy1,
328 . py3,px3,pxy3, pyx3 ,pxz3,pzx3 ,pyz3,pzy3,gg,k13,is)
329 CALL s6ckeg3(1,nel,py1, px1 ,pxy1, pyx1 ,pxz1,pzx1 ,pyz1,pzy1,
330 . py4,px4,pxy4, pyx4 ,pxz4,pzx4 ,pyz4,pzy4,gg,k14,is)
331 CALL s6ckeg3(1,nel,py1, px1 ,pxy1, pyx1 ,pxz1,pzx1 ,pyz1,pzy1,
332 . py5,px5,pxy5, pyx5 ,pxz5,pzx5 ,pyz5,pzy5,gg,k15,is)
333 CALL s6ckeg3(1,nel,py1, px1 ,pxy1, pyx1 ,pxz1,pzx1 ,pyz1,pzy1,
334 . py6,px6,pxy6, pyx6 ,pxz6,pzx6 ,pyz6,pzy6,gg,k16,is)
335 CALL s6ckeg3(1,nel,py2, px2 ,pxy2, pyx2 ,pxz2,pzx2 ,pyz2,pzy2,
336 . py3,px3,pxy3, pyx3 ,pxz3,pzx3 ,pyz3,pzy3,gg,k23,is)
337 CALL s6ckeg3(1,nel,py2, px2 ,pxy2, pyx2 ,pxz2,pzx2 ,pyz2,pzy2,
338 . py4,px4,pxy4, pyx4 ,pxz4,pzx4 ,pyz4,pzy4,gg,k24,is)
339 CALL s6ckeg3(1,nel,py2, px2 ,pxy2, pyx2 ,pxz2,pzx2 ,pyz2
340 . py5,px5,pxy5, pyx5 ,pxz5,pzx5 ,pyz5,pzy5,gg,k25,is)
341 CALL s6ckeg3(1,nel,py2, px2 ,pxy2, pyx2 ,pxz2,pzx2 ,pyz2,pzy2,
342 . py6,px6,pxy6, pyx6 ,pxz6,pzx6 ,pyz6
343CALL s6ckeg3(1,nel,py3, px3 ,pxy3, pyx3 ,pxz3,pzx3 ,pyz3,pzy3,
344 . py4,px4,pxy4, pyx4 ,pxz4,pzx4 ,pyz4,pzy4,gg,k34,is)
345 CALL s6ckeg3(1,nel,py3, px3 ,pxy3, pyx3 ,pxz3,pzx3 ,pyz3,pzy3,
346 . py5,px5,pxy5, pyx5 ,pxz5,pzx5 ,pyz5,pzy5,gg,k35,is)
347 CALL s6ckeg3(1,nel,py3, px3 ,pxy3, pyx3 ,pxz3,pzx3 ,pyz3,pzy3,
348 . py6,px6,pxy6, pyx6 ,pxz6,pzx6 ,pyz6,pzy6,gg,k36,is)
349 CALL s6ckeg3(1,nel,py4, px4 ,pxy4, pyx4 ,pxz4,pzx4 ,pyz4,pzy4,
350 . py5,px5,pxy5, pyx5 ,pxz5,pzx5 ,pyz5,pzy5,gg,k45,is)
351 CALL s6ckeg3(1,nel,py4, px4 ,pxy4, pyx4 ,pxz4,pzx4 ,pyz4,pzy4,
352 . py6,px6,pxy6, pyx6 ,pxz6,pzx6 ,pyz6,pzy6,gg,k46,is)
353 CALL s6ckeg3(1,nel,py5, px5 ,pxy5, pyx5 ,pxz5,pzx5 ,pyz5,pzy5,
354 . py6,px6,pxy6, pyx6 ,pxz6,pzx6 ,pyz6,pzy6,gg,k56,is)