29 1 VOL, NGL, DELTAX, DELTAX2,
34 6 MXT, PM, TAGELEM_SMS,V_PITER,
35 7 NPT, IINT, ISROT, IFORMDT)
39#include "implicit_f.inc"
55 INTEGER,
INTENT(IN) :: NPT
56 INTEGER,
INTENT(IN) :: IINT
57 INTEGER,
INTENT(IN) :: ISROT
58 INTEGER,
INTENT(IN) :: IFORMDT
59 INTEGER NGL(*), NC(MVSIZ,10), NEL, MXT(MVSIZ), TAGELEM_SMS(*)
62 . vol(mvsiz,5),deltax(*),deltax2(*),volg(*),
63 . rx(*),ry(*),rz(*), sx(*),sy(*),sz(*), tx(*),ty(*),tz(*),
64 . px(mvsiz,10,5),py(mvsiz,10,5),pz(mvsiz,10,5),
66 . pm(npropm,*),v_piter(nel,3,10)
71 INTEGER ITER,NITER,INIT_PITER
74 . PXX(MVSIZ),PYY(MVSIZ),PZZ(MVSIZ),PXY(MVSIZ),PYZ(MVSIZ),PXZ(MVSIZ),FACEIGV(MVSIZ),
75 . QX(MVSIZ,10),QY(MVSIZ,10),QZ(MVSIZ,10)
77 . d(mvsiz),gfac,bfac,ld,p,mass,mref,fac,
79 . a1x,a2x,a3x,a4x,a1y,a2y,a3y,a4y,a1z,a2z,a3z,a4z,aa0
81 . ux(mvsiz,10), uy(mvsiz,10), uz(mvsiz,10), vx(mvsiz,10), vy(mvsiz,10), vz(mvsiz,10),
82 . nv(mvsiz), ll, bu(mvsiz,6), ninv(mvsiz)
84 . b1(mvsiz), b2(mvsiz), b3(mvsiz), bb4(mvsiz),
85 . c1(mvsiz), c2(mvsiz), c3(mvsiz), c4(mvsiz),
86 . d1(mvsiz), d2(mvsiz), d3(mvsiz), d4(mvsiz),
87 . p4x1(mvsiz), p4x2(mvsiz), p4x3(mvsiz), p4x4(mvsiz),
88 . p4y1(mvsiz), p4y2(mvsiz), p4y3(mvsiz), p4y4(mvsiz),
89 . p4z1(mvsiz), p4z2(mvsiz), p4z3(mvsiz), p4z4(mvsiz),
93 . ALEAT, NN, WX(10), WY(10), WZ(10)
95 FAC = one/(nine+third)
96 IF(idt1tet10/=0 .AND. isrot==0)
THEN
100 faceigv(i)=trhee_over_14
105 IF(tagelem_sms(i)==0)
THEN
106 faceigv(i)=trhee_over_14
133 pxx(i) =pxx(i) + vol(i,ip)*px(i,n,ip)*px(i,n,ip)
134 pyy(i) =pyy(i) + vol(i,ip)*py(i,n,ip)*py(i,n,ip)
135 pzz(i) =pzz(i) + vol(i,ip)*pz(i,n,ip)*pz(i,n,ip)
143 pxx(i) =pxx(i) + faceigv(i)*vol(i,ip)*px(i,n,ip)*px(i,n,ip)
144 pyy(i) =pyy(i) + faceigv(i)*vol(i,ip)*py(i,n,ip)*py(i,n,ip)
145 pzz(i) =pzz(i) + faceigv(i)*vol(i,ip)*pz(i,n,ip)*pz(i,n,ip)
153 d(i) = pxx(i)+pyy(i)+pzz(i)
156 ELSEIF(iformdt==1)
THEN
161 ld =two*sqrt(
max(one-gfac,zero))+one
166 pxx(i)=px(i,1,ip)*px(i,1,ip)+px(i,2,ip)*px(i,2,ip)+px(i,3,ip)*px(i,3,ip)+px(i,4,ip)*px(i,4,ip
167 . faceigv(i)*(px(i,5,ip)*px(i,5,ip)+px(i,6,ip)*px(i,6,ip)+px(i,7,ip)*px(i,7,ip)+
168 . px(i,8,ip)*px(i,8,ip)+px(i,9,ip)*px(i,9,ip)+px(i,10,ip)*px(i,10,ip))
169 pyy(i)=py(i,1,ip)*py(i,1,ip)+py(i,2,ip)*py(i,2,ip)+py(i,3,ip)*py(i,3,ip)+py(i,4,ip)*py(i,4,ip)+
170 . faceigv(i)*(py(i,5,ip)*py(i,5,ip) +py(i,6,ip)*py(i,6,ip)+py(i,7,ip)*py(i,7,ip
171 . py(i,8,ip)*py(i,8,ip)+py(i,9,ip)*py(i,9,ip)+py(i,10,ip)*py(i,10,ip))
172 pzz(i)=pz(i,1,ip)*pz(i,1,ip)+pz(i,2,ip)*pz(i,2,ip)+pz(i,3,ip)*pz(i,3,ip)+pz(i,4,ip)*pz(i,4,ip)+
173 . faceigv(i)*(pz(i,5,ip)*pz(i,5,ip)+pz(i,6,ip)*pz(i,6,ip)+pz(i,7,ip)*pz(i,7,ip)+
174 . pz(i,8,ip)*pz(i,8,ip)+pz(i,9,ip)*pz(i,9,ip)+pz(i,10,ip)*pz(i,10,ip))
175 pxy(i)=px(i,1,ip)*py(i,1,ip)+px(i,2,ip)*py(i,2,ip)+px(i,3,ip)*py(i,3,ip)+px(i,4,ip)*py(i,4,ip)+
176 . faceigv(i)*(px(i,5,ip)*py(i,5,ip)+px(i,6,ip)*py(i,6,ip)+px(i,7,ip)*py(i,7,ip)+
177 . px(i,8,ip)*py(i,8,ip)+px(i,9,ip)*py(i,9,ip)+px(i,10,ip)*py(i,10,ip))
178 pxz(i)=px(i,1,ip)*pz(i,1,ip)+px(i,2,ip)*pz(i,2,ip)+px(i,3,ip)*pz(i,3,ip)+px(i,4,ip)*pz(i,4,ip)+
179 . faceigv(i)*(px(i,5,ip)*pz(i,5,ip)+px(i,6,ip)*pz(i,6,ip)+px(i,7,ip)*pz(i,7,ip)+
180 . px(i,8,ip)*pz(i,8,ip)+px(i,9,ip)*pz(i,9,ip)+px(i,10,ip)*pz(i,10,ip))
181 pyz(i)=py(i,1,ip)*pz(i,1,ip)+py(i,2,ip)*pz(i,2,ip)+py(i,3,ip)*pz(i,3,ip)+py(i,4,ip)*pz(i,4,ip)+
182 . faceigv(i)*(py(i,5,ip)*pz(i,5,ip)+py(i,6,ip)*pz(i,6,ip)+py(i,7,ip)*pz(i,7,ip)+
183 . py(i,8,ip)*pz(i,8,ip)+py(i,9,ip)*pz(i,9,ip)+py(i,10,ip)*pz(i,10,ip))
187 aa = -(pxx(i)+pyy(i)+pzz(i))
188 bb = (pxx(i)*pyy(i)+pxx(i)*pzz(i)+pyy(i)*pzz(i)-pxy(i)**2-pxz(i)**2-pyz(i)**2)
190 d(i) = d(i)+ ld * vol(i,ip) * (two*sqrt(third*
max(-p,zero))-third*aa)
194 ELSEIF(iformdt==2)
THEN
203 pxx(i)=px(i,1,ip)*px(i,1,ip)+px(i,2,ip)*px(i,2,ip)+px(i,3,ip)*px(i,3,ip)+px(i,4,ip)*px(i,4,ip)+
204 . faceigv(i)*(px(i,5,ip)*px(i,5,ip)+px(i,6,ip)*px(i,6,ip)+px(i,7,ip)*px(i,7,ip)+
205 . px(i,8,ip)*px(i,8,ip)+px(i,9,ip)*px(i,9,ip)+px(i,10,ip)*px(i,10,ip))
207 . faceigv(i)*(py(i,5,ip)*py(i,5,ip) +py(i,6,ip)*py(i,6,ip)+py(i,7,ip)*py(i,7,ip)+
208 . py(i,8,ip)*py(i,8,ip)+py(i,9,ip)*py(i,9,ip)+py(i,10,ip)*py(i,10,ip))
209 pzz(i)=pz(i,1,ip)*pz(i,1,ip)+pz(i,2,ip)*pz(i,2,ip)+pz(i,3,ip)*pz(i,3,ip)+pz(i,4,ip)*pz(i,4,ip)+
210 . faceigv(i)*(pz(i,5,ip)*pz(i,5,ip)+pz(i,6,ip)*pz(i,6,ip)+pz(i,7,ip)*pz(i,7,ip)+
211 . pz(i,8,ip)*pz(i,8,ip)+pz(i,9,ip)*pz(i,9,ip)+pz(i,10,ip)*pz(i,10,ip))
212 pxy(i)=px(i,1,ip)*py(i,1,ip)+px(i,2,ip)*py(i,2,ip)+px(i,3,ip)*py(i,3,ip)+px(i,4,ip)*py(i,4,ip)+
213 . faceigv(i)*(px(i,5,ip)*py(i,5,ip)+px(i,6,ip)*py(i,6,ip)+px(i,7,ip)*py(i,7,ip)+
214 . px(i,8,ip)*py(i,8,ip)+px(i,9,ip)*py(i,9,ip)+px(i,10,ip)*py(i,10,ip))
215 pxz(i)=px(i,1,ip)*pz(i,1,ip)+px(i,2,ip)*pz(i,2,ip)+px(i,3,ip)*pz(i,3,ip)+px(i,4,ip)*pz(i,4,ip)+
216 . faceigv(i)*(px(i,5,ip)*pz(i,5,ip)+px(i,6,ip)*pz(i,6,ip)+px(i,7,ip)*pz(i,7,ip)+
217 . px(i,8,ip)*pz(i,8,ip)+px(i,9,ip)*pz(i,9,ip)+px(i,10,ip)*pz(i,10,ip))
218 pyz(i)=py(i,1,ip)*pz(i,1,ip)+py(i,2,ip)*pz(i,2,ip)+py(i,3,ip)*pz(i,3,ip)+py(i,4,ip)*pz(i,4,ip)+
219 . faceigv(i)*(py(i,5,ip)*pz(i,5,ip)+py(i,6,ip)*pz(i,6,ip)+py(i,7,ip)*pz(i,7,ip)+
220 . py(i,8,ip)*pz(i,8,ip)+py(i,9,ip)*pz(i,9,ip)+py(i,10,ip)*pz(i,10,ip))
224 aa = -(pxx(i)+pyy(i)+pzz(i))
225 bb = gfac*(pxx(i)*pyy(i)+pxx(i)*pzz(i)+pyy(i)*pzz(i)-pxy(i)**2-pxz(i)**2-pyz(i)**2)
244 IF(v_piter(1,1,n)/=zero.OR.v_piter(1,2,n)/=zero.OR.v_piter(1,3,n)/=zero)init_piter=0
248 IF(init_piter==1)
THEN
253 ileat=mod(25173*ileat+13849,65536)
254 aleat=(ileat-32768.)/32768.
256 ileat=mod(25173*ileat+13849,65536)
257 aleat=(ileat-32768.)/32768.
259 ileat=mod(25173*ileat+13849,65536)
260 aleat=(ileat-32768.)/32768.
266 nn = nn + wx(n)*wx(n)+wy(n)*wy(n)+wz(n)*wz(n)
286 ux(1:nel,1:10)=v_piter(1:nel,1,1:10)
287 uy(1:nel,1:10)=v_piter(1:nel,2,1:10)
288 uz(1:nel,1:10)=v_piter(1:nel,3,1:10)
295 gfac=half*pm(105,mxt(1))
315 bu(i,1)=bu(i,1)+px(i,n,ip)*ux(i,n)
316 bu(i,2)=bu(i,2)+py(i,n,ip)*uy(i,n)
317 bu(i,3)=bu(i,3)+pz(i,n,ip)*uz(i,n)
318 bu(i,4)=bu(i,4)+py(i,n,ip)*ux(i,n)+px(i,n,ip)*uy(i,n)
319 bu(i,5)=bu(i,5)+pz(i,n,ip)*uy(i,n)+py(i,n,ip)*uz(i,n)
320 bu(i,6)=bu(i,6)+pz(i,n,ip)*ux(i,n)+px(i,n,ip)*uz(i,n)
338 vx(i,n)=vx(i,n)+vol(i,ip)*(px(i,n,ip)*bu(i,1)+py(i,n,ip)*bu(i,4)+pz(i,n,ip)*bu(i,6))
339 vy(i,n)=vy(i,n)+vol(i,ip)*(py(i,n,ip)*bu(i,2)+px(i,n,ip)*bu(i,4)+pz(i,n,ip)*bu(i,5))
340 vz(i,n)=vz(i,n)+vol(i,ip)*(pz(i,n,ip)*bu(i,3)+py(i,n,ip)*bu(i,5)+px(i,n,ip)*bu(i,6))
349 nv(i) = nv(i) + vx(i,n)*vx(i,n)+vy(i,n)*vy(i,n)+vz(i,n)*vz(i,n)
354 vx(i,n)=faceigv(i)*vx(i,n)
355 vy(i,n)=faceigv(i)*vy(i,n)
356 vz(i,n)=faceigv(i)*vz(i,n)
357 nv(i) = nv(i) + vx(i,n)*vx(i,n)+vy(i,n)*vy(i,n)+vz(i,n)*vz(i,n)
362 ninv(i)=one/
max(em20,nv(i))
366 vx(i,n)=ninv(i) * vx(i,n)
367 vy(i,n)=ninv(i) * vy(i,n)
368 vz(i,n)=ninv(i) * vz(i,n)
371 ux(1:nel,1:10)=vx(1:nel,1:10)
372 uy(1:nel,1:10)=vy(1:nel,1:10)
373 uz(1:nel,1:10)=vz(1:nel,1:10)
380 v_piter(1:nel,1,1:10)=ux(1:nel,1:10)
381 v_piter(1:nel,2,1:10)=uy(1:nel,1:10)
382 v_piter(1:nel,3,1:10)=uz(1:nel,1:10)
395 ul(i,n) =ul(i,n) + vol(i,ip) *
396 + ( px(i,n,ip)*px(i,n,ip) + py(i,n,ip)*py(i,n,ip)
397 + + pz(i,n,ip)*pz(i,n,ip) )
403 aa =
max(ul(i,1),ul(i,2),ul(i,3),ul(i,4))
404 bb = faceigv(i)*
max(ul(i,5),ul(i,6),ul(i,7),ul(i,8),ul(i,9),ul(i,10))
417 mref = one/thirty2 * mass
418 deltax(i) = two*sqrt(mref/d(i))
421 ELSEIF(idt1tet10/=0 .AND. isrot==2)
THEN
446 qx(i,1)=px(i,1,ip)+half*(px(i,5,ip)+px(i,7,ip)+px(i,8,ip))
447 qx(i,2)=px(i,2,ip)+half*(px(i,5,ip)+px(i,6,ip)+px(i,9,ip))
448 qx(i,3)=px(i,3,ip)+half*(px(i,6,ip)+px(i,7,ip)+px(i,10,ip))
449 qx(i,4)=px(i,4,ip)+half*(px(i,8,ip)+px(i,9,ip)+px(i,10,ip))
452 qx(i,5) =half*(qx(i,1)+qx(i,2))+fac*px(i,5,ip)
454 qx(i,7) =half*(qx(i,1)+qx(i,3))+fac*px(i,7,ip)
455 qx(i,8) =half*(qx(i,1)+qx(i,4))+fac*px(i,8,ip)
456 qx(i,9) =half*(qx(i,2)+qx(i,4))+fac
457 qx(i,10)=half*(qx(i,3)+qx(i,4))+fac*px(i,10,ip)
459 qy(i,1)=py(i,1,ip)+half*(py(i,5,ip)+py(i,7,ip)+py(i,8,ip))
460 qy(i,2)=py(i,2,ip)+half*(py(i,5,ip)+py(i,6,ip)+py(i,9,ip))
461 qy(i,3)=py(i,3,ip)+half*(py(i,6,ip)+py(i,7,ip)+py(i,10,ip))
462 qy(i,4)=py(i,4,ip)+half*(py(i,8,ip)+py(i,9,ip)+py(i,10,ip))
463 qy(i,5) =half*(qy(i,1)+qy(i,2))+fac*py(i,5,ip)
464 qy(i,6) =half*(qy(i,2)+qy(i,3))+fac*py(i,6,ip)
465 qy(i,7) =half*(qy(i,1)+qy(i,3))+fac*py(i,7,ip)
466 qy(i,8) =half*(qy(i,1)+qy(i,4))+fac*py(i,8,ip)
467 qy(i,9) =half*(qy(i,2)+qy(i,4))+fac*py(i,9,ip)
468 qy(i,10)=half*(qy(i,3)+qy(i,4))+fac*py(i,10,ip)
470 qz(i,1)=pz(i,1,ip)+half*(pz(i,5,ip)+pz(i,7,ip)+pz(i,8,ip))
471 qz(i,2)=pz(i,2,ip)+half*(pz(i,5,ip)+pz(i,6,ip)+pz(i,9,ip))
472 qz(i,3)=pz(i,3,ip)+half*(pz(i,6,ip)+pz(i,7,ip)+pz(i,10,ip))
473 qz(i,4)=pz(i,4,ip)+half*(pz(i,8,ip)+pz(i,9,ip)+pz(i,10,ip))
474 qz(i,5) =half*(qz(i,1)+qz(i,2))+fac*pz(i,5,ip)
475 qz(i,6) =half*(qz(i,2)+qz(i,3))+fac*pz(i,6,ip)
476 qz(i,7) =half*(qz(i,1)+qz(i,3))+fac*pz(i,7,ip)
477 qz(i,8) =half*(qz(i,1)+qz(i,4))+fac*pz(i,8,ip)
478 qz(i,9) =half*(qz(i,2)+qz(i,4))+fac*pz(i,9,ip)
479 qz(i,10)=half*(qz(i,3)+qz(i,4))+fac*pz(i,10,ip)
486 . px(i,1,ip)*qx(i,1)+px(i,2,ip)*qx(i,2)+px(i,3,ip)*qx(i,3)+px(i,4,ip)*qx(i,4)+
487 . px(i,5,ip)*qx(i,5)+px(i,6,ip)*qx(i,6)+px(i,7,ip)*qx(i,7)+
488 . px(i,8,ip)*qx(i,8)+px(i,9,ip)*qx(i,9)+px(i,10,ip)*qx(i,10)
490 . py(i,1,ip)*qy(i,1)+py(i,2,ip)*qy(i,2)+py(i,3,ip)*qy(i,3)+py(i,4,ip)*qy(i,4)+
491 . py(i,5,ip)*qy(i,5) +py(i,6,ip)*qy(i,6)+py(i,7,ip)*qy(i,7)+
492 . py(i,8,ip)*qy(i,8)+py(i,9,ip)*qy(i,9)+py(i,10,ip)*qy(i,10)
494 . pz(i,1,ip)*qz(i,1)+pz(i,2,ip)*qz(i,2)+pz(i,3,ip)*qz(i,3)+pz(i,4,ip)*qz(i,4)+
495 . pz(i,5,ip)*qz(i,5)+pz(i,6,ip)*qz(i,6)+pz(i,7,ip)*qz(i,7)+
496 . pz(i,8,ip)*qz(i,8)+pz(i,9,ip)*qz(i,9)+pz(i,10,ip)*qz(i,10)
511 d(i) = pxx(i)+pyy(i)+pzz(i)
514 ELSEIF(iformdt==1)
THEN
519 ld =two*sqrt(
max(one-gfac,zero))+one
528 qx(i,1)=px(i,1,ip)+half*(px(i,5,ip)+px(i,7,ip)+px(i,8,ip))
529 qx(i,2)=px(i,2,ip)+half*(px(i,5,ip)+px(i,6,ip)+px(i,9,ip))
530 qx(i,3)=px(i,3,ip)+half*(px(i,6,ip)+px(i,7,ip)+px(i,10,ip))
531 qx(i,4)=px(i,4,ip)+half*(px(i,8,ip)+px(i,9,ip)+px(i,10,ip))
534 qx(i,5) =half*(qx(i,1)+qx(i,2))+fac*px(i,5,ip)
535 qx(i,6) =half*(qx(i,2)+qx(i,3))+fac*px(i,6,ip)
536 qx(i,7) =half*(qx(i,1)+qx(i,3))+fac*px(i,7,ip)
537 qx(i,8) =half*(qx(i,1)+qx(i,4))+fac*px(i,8,ip)
538 qx(i,9) =half*(qx(i,2)+qx(i,4))+fac*px(i,9,ip)
539 qx(i,10)=half*(qx(i,3)+qx(i,4))+fac*px(i,10,ip)
541 qy(i,1)=py(i,1,ip)+half*(py(i,5,ip)+py(i,7,ip)+py(i,8,ip))
542 qy(i,2)=py(i,2,ip)+half*(py(i,5,ip)+py(i,6,ip)+py(i,9,ip))
543 qy(i,3)=py(i,3,ip)+half*(py(i,6,ip)+py(i,7,ip)+py(i,10,ip))
544 qy(i,4)=py(i,4,ip)+half*(py(i,8,ip)+py(i,9,ip)+py(i,10,ip))
545 qy(i,5) =half*(qy(i,1)+qy(i,2))+fac*py(i,5,ip)
546 qy(i,6) =half*(qy(i,2)+qy(i,3))+fac*py(i,6,ip)
547 qy(i,7) =half*(qy(i,1)+qy(i,3))+fac*py(i,7,ip)
548 qy(i,8) =half*(qy(i,1)+qy(i,4))+fac*py(i,8,ip)
549 qy(i,9) =half*(qy(i,2)+qy(i,4))+fac*py(i,9,ip)
550 qy(i,10)=half*(qy(i,3)+qy(i,4))+fac*py(i,10,ip)
552 qz(i,1)=pz(i,1,ip)+half*(pz(i,5,ip)+pz(i,7,ip)+pz(i,8,ip))
553 qz(i,2)=pz(i,2,ip)+half*(pz(i,5,ip)+pz(i,6,ip)+pz(i,9,ip))
554 qz(i,3)=pz(i,3,ip)+half*(pz(i,6,ip)+pz(i,7,ip)+pz(i,10,ip))
555 qz(i,4)=pz(i,4,ip)+half*(pz(i,8,ip)+pz(i,9,ip)+pz(i,10,ip))
556 qz(i,5) =half*(qz(i,1)+qz(i,2))+fac*pz(i,5,ip)
557 qz(i,6) =half*(qz(i,2)+qz(i,3))+fac*pz(i,6,ip)
558 qz(i,7) =half*(qz(i,1)+qz(i,3))+fac*pz(i,7,ip)
559 qz(i,8) =half*(qz(i,1)+qz(i,4))+fac*pz(i,8,ip)
560 qz(i,9) =half*(qz(i,2)+qz(i,4))+fac*pz(i,9,ip)
561 qz(i,10)=half*(qz(i,3)+qz(i,4))+fac*pz(i,10,ip)
567 pxx(i)=px(i,1,ip)*qx(i,1)+px(i,2,ip)*qx(i,2)+px(i,3,ip)*qx(i,3)+px(i,4,ip)*qx(i,4)+
568 . px(i,5,ip)*qx(i,5)+px(i,6,ip)*qx(i,6)+px(i,7,ip)*qx(i,7)+
569 . px(i,8,ip)*qx(i,8)+px(i,9,ip)*qx(i,9)+px(i,10,ip)*qx(i,10)
570 pyy(i)=py(i,1,ip)*qy(i,1)+py(i,2,ip)*qy(i,2)+py(i,3,ip)*qy(i,3)+py(i,4,ip)*qy
571 . py(i,5,ip)*qy(i,5) +py(i,6,ip)*qy(i,6)+py(i,7,ip)*qy(i,7)+
572 . py(i,8,ip)*qy(i,8)+py(i,9,ip)*qy(i,9)+py(i,10,ip)*qy(i,10)
573 pzz(i)=pz(i,1,ip)*qz(i,1)+pz(i,2,ip)*qz(i,2)+pz(i,3,ip)*qz(i,3)+pz(i,4,ip)*qz(i,4)+
574 . pz(i,5,ip)*qz(i,5)+pz(i,6,ip)*qz(i,6)+pz(i,7,ip)*qz(i,7)+
575 . pz(i,8,ip)*qz(i,8)+pz(i,9,ip)*qz(i,9)+pz(i,10,ip)*qz(i,10)
576 pxy(i)=px(i,1,ip)*qy(i,1)+px(i,2,ip)*qy(i,2)+px(i,3,ip)*qy(i,3)+px(i,4,ip)*qy(i,4)+
577 . px(i,5,ip)*qy(i,5)+px(i,6,ip)*qy(i,6)+px(i,7,ip)*qy(i,7)+
578 . px(i,8,ip)*qy(i,8)+px(i,9,ip)*qy(i,9)+px(i,10,ip)*qy(i,10)
579 pxz(i)=px(i,1,ip)*qz(i,1)+px(i,2,ip)*qz(i,2)+px(i,3,ip)*qz(i,3)+px(i,4,ip)*qz(i,4)+
580 . px(i,5,ip)*qz(i,5)+px(i,6,ip)*qz(i,6)+px(i,7,ip)*qz(i,7)+
581 . px(i,8,ip)*qz(i,8)+px(i,9,ip)*qz(i,9)+px(i,10,ip)*qz(i,10)
582 pyz(i)=py(i,1,ip)*qz(i,1)+py(i,2,ip)*qz(i,2)+py(i,3,ip)*qz(i,3)+py(i,4,ip)*qz(i,4)+
583 . py(i,5,ip)*qz(i,5)+py(i,6,ip)*qz(i,6)+py(i,7,ip)*qz(i,7)+
584 . py(i,8,ip)*qz(i,8)+py(i,9,ip)*qz(i,9)+py(i,10,ip)*qz(i,10)
588 aa = -(pxx(i)+pyy(i)+pzz(i))
589 bb = (pxx(i)*pyy(i)+pxx(i)*pzz(i)+pyy(i)*pzz(i)-pxy(i)**2-pxz(i)**2-pyz(i)**2)
591 d(i) = d(i)+ ld * vol(i,ip) * (two*sqrt(third*
max(-p,zero))-third*aa)
595 ELSEIF(iformdt==2)
THEN
608 qx(i,1)=px(i,1,ip)+half*(px(i,5,ip)+px(i,7,ip)+px(i,8,ip))
609 qx(i,2)=px(i,2,ip)+half*(px(i,5,ip)+px(i,6,ip)+px(i,9,ip))
610 qx(i,3)=px(i,3,ip)+half*(px(i,6,ip)+px(i,7,ip)+px(i,10,ip))
611 qx(i,4)=px(i,4,ip)+half*(px(i,8,ip)+px(i,9,ip)+px(i,10,ip))
614 qx(i,5) =half*(qx(i,1)+qx(i,2))+fac*px(i,5,ip)
615 qx(i,6) =half*(qx(i,2)+qx(i,3))+fac*px(i,6,ip)
616 qx(i,7) =half*(qx(i,1)+qx(i,3))+fac*px(i,7,ip)
617 qx(i,8) =half*(qx(i,1)+qx(i,4))+fac*px(i,8,ip)
618 qx(i,9) =half*(qx(i,2)+qx(i,4))+fac*px(i,9,ip)
619 qx(i,10)=half*(qx(i,3)+qx(i,4))+fac*px(i,10,ip)
621 qy(i,1)=py(i,1,ip)+half*(py(i,5,ip)+py(i,7,ip)+py(i,8,ip))
622 qy(i,2)=py(i,2,ip)+half*(py(i,5,ip)+py(i,6,ip)+py(i,9,ip))
623 qy(i,3)=py(i,3,ip)+half*(py(i,6,ip)+py(i,7,ip)+py(i,10,ip))
624 qy(i,4)=py(i,4,ip)+half*(py(i,8,ip)+py(i,9,ip)+py(i,10,ip))
625 qy(i,5) =half*(qy(i,1)+qy(i,2))+fac*py(i,5,ip)
626 qy(i,6) =half*(qy(i,2)+qy(i,3))+fac*py(i,6,ip)
627 qy(i,7) =half*(qy(i,1)+qy(i,3))+fac*py(i,7,ip)
628 qy(i,8) =half*(qy(i,1)+qy(i,4))+fac*py(i,8,ip)
629 qy(i,9) =half*(qy(i,2)+qy(i,4))+fac*py(i,9,ip)
630 qy(i,10)=half*(qy(i,3)+qy(i,4))+fac*py(i,10,ip)
632 qz(i,1)=pz(i,1,ip)+half*(pz(i,5,ip)+pz(i,7,ip)+pz(i,8,ip))
633 qz(i,2)=pz(i,2,ip)+half*(pz(i,5,ip)+pz(i,6,ip)+pz(i,9,ip))
634 qz(i,3)=pz(i,3,ip)+half*(pz(i,6,ip)+pz(i,7,ip)+pz(i,10,ip))
635 qz(i,4)=pz(i,4,ip)+half*(pz(i,8,ip)+pz(i,9,ip)+pz(i,10,ip))
636 qz(i,5) =half*(qz(i,1)+qz(i,2))+fac*pz(i,5,ip)
637 qz(i,6) =half*(qz(i,2)+qz(i,3))+fac*pz(i,6,ip)
638 qz(i,7) =half*(qz(i,1)+qz(i,3))+fac*pz(i,7,ip)
639 qz(i,8) =half*(qz(i,1)+qz(i,4))+fac*pz(i,8,ip)
640 qz(i,9) =half*(qz(i,2)+qz(i,4))+fac*pz(i,9,ip)
641 qz(i,10)=half*(qz(i,3)+qz(i,4))+fac*pz(i,10,ip)
647 pxx(i)=px(i,1,ip)*qx(i,1)+px(i,2,ip)*qx(i,2)+px(i,3,ip)*qx(i,3)+px(i,4,ip)*qx(i,4)+
648 . px(i,5,ip)*qx(i,5)+px(i,6,ip)*qx(i,6)+px(i,7,ip)*qx(i,7)+
649 . px(i,8,ip)*qx(i,8)+px(i,9,ip)*qx(i,9)+px(i,10,ip)*qx(i,10)
650 pyy(i)=py(i,1,ip)*qy(i,1)+py(i,2,ip)*qy(i,2)+py(i,3,ip)*qy(i,3)+py(i,4,ip)*qy(i,4)+
651 . py(i,5,ip)*qy(i,5) +py(i,6,ip)*qy(i,6)+py(i,7,ip)*qy(i,7)+
652 . py(i,8,ip)*qy(i,8)+py(i,9,ip)*qy(i,9)+py(i,10,ip)*qy(i,10)
653 pzz(i)=pz(i,1,ip)*qz(i,1)+pz(i,2,ip)*qz(i,2)+pz(i,3,ip)*qz(i,3)+pz(i,4,ip)*qz(i,4)+
654 . pz(i,5,ip)*qz(i,5)+pz(i,6,ip)*qz(i,6)+pz(i,7,ip)*qz(i,7)+
655 . pz(i,8,ip)*qz(i,8)+pz(i,9,ip)*qz(i,9)+pz(i,10,ip)*qz(i,10)
656 pxy(i)=px(i,1,ip)*qy(i,1)+px(i,2,ip)*qy(i,2)+px(i,3,ip)*qy(i,3)+px(i,4,ip)*qy(i,4)+
657 . px(i,5,ip)*qy(i,5)+px(i,6,ip)*qy(i,6)+px(i,7,ip)*qy(i,7)+
658 . px(i,8,ip)*qy(i,8)+px(i,9,ip)*qy(i,9)+px(i,10,ip)*qy(i,10)
659 pxz(i)=px(i,1,ip)*qz(i,1)+px(i,2,ip)*qz(i,2)+px(i,3,ip)*qz(i,3)+px(i,4,ip)*qz(i,4)+
660 . px(i,5,ip)*qz(i,5)+px(i,6,ip)*qz(i,6)+px(i,7,ip)*qz(i,7)+
661 . px(i,8,ip)*qz(i,8)+px(i,9,ip)*qz(i,9)+px(i,10,ip)*qz(i,10)
662 pyz(i)=py(i,1,ip)*qz(i,1)+py(i,2,ip)*qz(i,2)+py(i,3,ip)*qz(i,3)+py(i,4,ip)*qz(i,4)+
663 . py(i,5,ip)*qz(i,5)+py(i,6,ip)*qz(i,6)+py(i,7,ip)*qz(i,7)+
664 . py(i,8,ip)*qz(i,8)+py(i,9,ip)*qz(i,9)+py(i,10,ip)*qz(i,10)
668 aa = -(pxx(i)+pyy(i)+pzz(i))
669 bb = gfac*(pxx(i)*pyy(i)+pxx(i)*pzz(i)+pyy(i)*pzz(i)-pxy(i)**2-pxz(i)**2-pyz(i)**2)
672 d(i) = d(i)+vol(i,ip)*(two*sqrt(third*
max(-p,zero))-third*aa)
688 IF(v_piter(1,1,n)/=zero.OR.v_piter(1,2,n)/=zero.OR.v_piter(1,3,n)/=zero)init_piter=0
694 IF(init_piter==1)
THEN
699 ileat=mod(25173*ileat+13849,65536)
700 aleat=(ileat-32768.)/32768.
702 ileat=mod(25173*ileat+13849,65536)
703 aleat=(ileat-32768.)/32768.
705 ileat=mod(25173*ileat+13849,65536)
706 aleat=(ileat-32768.)/32768.
712 nn = nn + wx(n)*wx(n)+wy(n)*wy(n)+wz(n)*wz(n)
732 ux(1:nel,1:10)=v_piter(1:nel,1,1:10)
733 uy(1:nel,1:10)=v_piter(1:nel,2,1:10)
734 uz(1:nel,1:10)=v_piter(1:nel,3,1:10)
741 gfac=half*pm(105,mxt(1))
760 bu(i,1)=bu(i,1)+px(i,n,ip)*ux(i,n)
761 bu(i,2)=bu(i,2)+py(i,n,ip)*uy(i,n)
762 bu(i,3)=bu(i,3)+pz(i,n,ip)*uz(i,n)
763 bu(i,4)=bu(i,4)+py(i,n,ip)*ux(i,n)+px(i,n,ip)*uy(i,n)
764 bu(i,5)=bu(i,5)+pz(i,n,ip)*uy(i,n)+py(i,n,ip)*uz(i,n)
765 bu(i,6)=bu(i,6)+pz(i,n,ip)*ux(i,n)+px(i,n,ip)*uz(i,n)
783 vx(i,n)=vx(i,n)+vol(i,ip)*(px(i,n,ip)*bu(i,1)+py(i,n,ip)*bu(i,4)+pz(i,n,ip)*bu(i,6))
784 vy(i,n)=vy(i,n)+vol(i,ip)*(py(i,n,ip)*bu(i,2)+px(i,n,ip)*bu(i,4)+pz(i,n,ip)*bu(i,5))
785 vz(i,n)=vz(i,n)+vol(i,ip)*(pz(i,n,ip)*bu(i,3)+py(i,n,ip)*bu(i,5)+px(i,n,ip)*bu
793 vx(i,1)=vx(i,1)+half*(vx(i,5)+vx(i,7)+vx(i,8))
794 vx(i,2)=vx(i,2)+half*(vx(i,5)+vx(i,6)+vx(i,9))
795 vx(i,3)=vx(i,3)+half*(vx(i,6)+vx(i,7)+vx(i,10))
796 vx(i,4)=vx(i,4)+half*(vx(i,8)+vx(i,9)+vx(i,10))
799 vx(i,5) =half*(vx(i,1)+vx(i,2))+fac*vx(i,5)
800 vx(i,6) =half*(vx(i,2)+vx(i,3))+fac*vx(i,6)
801 vx(i,7) =half*(vx(i,1)+vx(i,3))+fac*vx(i,7)
802 vx(i,8) =half*(vx(i,1)+vx(i,4))+fac*vx(i,8)
803 vx(i,9) =half*(vx(i,2)+vx(i,4))+fac*vx(i,9)
804 vx(i,10)=half*(vx(i,3)+vx(i,4))+fac*vx(i,10)
806 vy(i,1)=vy(i,1)+half*(vy(i,5)+vy(i,7)+vy
807 vy(i,2)=vy(i,2)+half*(vy(i,5)+vy(i,6)+vy(i,9))
808 vy(i,3)=vy(i,3)+half*(vy(i,6)+vy(i,7)+vy(i,10))
809 vy(i,4)=vy(i,4)+half*(vy(i,8)+vy(i,9)+vy(i,10))
810 vy(i,5) =half*(vy(i,1)+vy(i,2))+fac*vy(i,5)
811 vy(i,6) =half*(vy(i,2)+vy(i,3))+fac*vy(i,6)
812 vy(i,7) =half*(vy(i,1)+vy(i,3))+fac*vy(i,7)
813 vy(i,8) =half*(vy(i,1)+vy(i,4))+fac*vy(i,8)
814 vy(i,9) =half*(vy(i,2)+vy(i,4))+fac*vy(i,9)
815 vy(i,10)=half*(vy(i,3)+vy(i,4))+fac*vy(i,10)
817 vz(i,1)=vz(i,1)+half*(vz(i,5)+vz(i,7)+vz(i,8))
818 vz(i,2)=vz(i,2)+half*(vz(i,5)+vz(i,6)+vz(i,9))
819 vz(i,3)=vz(i,3)+half*(vz(i,6)+vz(i,7)+vz(i,10))
820 vz(i,4)=vz(i,4)+half*(vz(i,8)+vz(i,9)+vz(i,10))
821 vz(i,5) =half*(vz(i,1)+vz(i,2))+fac*vz(i,5)
822 vz(i,6) =half*(vz(i,2)+vz(i,3))+fac*vz(i,6)
823 vz(i,7) =half*(vz(i,1)+vz(i,3))+fac*vz(i,7)
824 vz(i,8) =half*(vz(i,1)+vz(i,4))+fac*vz(i,8)
825 vz(i,9) =half*(vz(i,2)+vz(i,4))+fac*vz(i,9)
826 vz(i,10)=half*(vz(i,3)+vz(i,4))+fac*vz(i,10)
833 nv(i) = nv(i) + vx(i,n)*vx(i,n)+vy(i,n)*vy(i,n)+vz(i,n)*vz(i,n)
838 ninv(i)=one/
max(em20,nv(i))
842 vx(i,n)=ninv(i) * vx(i,n)
843 vy(i,n)=ninv(i) * vy(i,n)
844 vz(i,n)=ninv(i) * vz(i,n)
847 ux(1:nel,1:10)=vx(1:nel,1:10)
848 uy(1:nel,1:10)=vy(1:nel,1:10)
849 uz(1:nel,1:10)=vz(1:nel,1:10)
856 v_piter(1:nel,1,1:10)=ux(1:nel,1:10)
857 v_piter(1:nel,2,1:10)=uy(1:nel,1:10)
858 v_piter(1:nel,3,1:10)=uz(1:nel,1:10)
872 qx(i,1)=px(i,1,ip)+half*(px(i,5,ip)+px(i,7,ip)+px(i,8,ip))
873 qx(i,2)=px(i,2,ip)+half*(px(i,5,ip)+px(i,6,ip)+px(i,9,ip))
874 qx(i,3)=px(i,3,ip)+half*(px(i,6,ip)+px(i,7,ip)+px(i,10,ip))
875 qx(i,4)=px(i,4,ip)+half*(px(i,8,ip)+px(i,9,ip)+px(i,10,ip))
878 qx(i,5) =half*(qx(i,1)+qx(i,2))+fac*px(i,5,ip)
879 qx(i,6) =half*(qx(i,2)+qx(i,3))+fac*px(i,6,ip)
880 qx(i,7) =half*(qx(i,1)+qx(i,3))+fac*px(i,7,ip)
881 qx(i,8) =half*(qx(i,1)+qx(i,4))+fac*px(i,8,ip)
882 qx(i,9) =half*(qx(i,2)+qx(i,4))+fac*px(i,9,ip)
883 qx(i,10)=half*(qx(i,3)+qx(i,4))+fac*px(i,10,ip)
885 qy(i,1)=py(i,1,ip)+half*(py(i,5,ip)+py(i,7,ip)+py(i,8,ip))
886 qy(i,2)=py(i,2,ip)+half*(py(i,5,ip)+py(i,6,ip)+py(i,9,ip))
887 qy(i,3)=py(i,3,ip)+half*(py(i,6,ip)+py(i,7,ip)+py(i,10,ip))
888 qy(i,4)=py(i,4,ip)+half*(py(i,8,ip)+py(i,9,ip)+py(i,10,ip))
889 qy(i,5) =half*(qy(i,1)+qy(i,2))+fac*py(i,5,ip)
890 qy(i,6) =half*(qy(i,2)+qy(i,3))+fac*py(i,6,ip)
891 qy(i,7) =half*(qy(i,1)+qy(i,3))+fac*py(i,7,ip)
892 qy(i,8) =half*(qy(i,1)+qy(i,4))+fac*py(i,8,ip)
893 qy(i,9) =half*(qy(i,2)+qy(i,4))+fac*py(i,9,ip)
894 qy(i,10)=half*(qy(i,3)+qy(i,4))+fac*py(i,10,ip)
896 qz(i,1)=pz(i,1,ip)+half*(pz(i,5,ip)+pz(i,7,ip)+pz(i,8,ip))
897 qz(i,2)=pz(i,2,ip)+half*(pz(i,5,ip)+pz(i,6,ip)+pz(i,9,ip))
898 qz(i,3)=pz(i,3,ip)+half*(pz(i,6,ip)+pz(i,7,ip)+pz(i,10,ip))
899 qz(i,4)=pz(i,4,ip)+half*(pz(i,8,ip)+pz(i,9,ip)+pz(i,10,ip))
900 qz(i,5) =half*(qz(i,1)+qz(i,2))+fac*pz(i,5,ip)
901 qz(i,6) =half*(qz(i,2)+qz(i,3))+fac*pz(i,6,ip)
902 qz(i,7) =half*(qz(i,1)+qz(i,3))+fac*pz(i,7,ip)
903 qz(i,8) =half*(qz(i,1)+qz(i,4))+fac*pz(i,8,ip)
904 qz(i,9) =half*(qz(i,2)+qz(i,4))+fac*pz(i,9,ip)
905 qz(i,10)=half*(qz(i,3)+qz(i,4))+fac*pz(i,10,ip)
912 ul(i,n) =ul(i,n) + vol(i,ip) *
913 + ( qx(i,n)*px(i,n,ip) + qy(i,n)*py(i,n,ip) + qz(i,n)*pz(i,n,ip) )
919 aa =
max(ul(i,1),ul(i,2),ul(i,3),ul(i,4))
920 bb =
max(ul(i,5),ul(i,6),ul(i,7),ul(i,8),ul(i,9),ul(i,10))
933 deltax(i) = two*sqrt(mref/d(i))
951 ul(i,n) =ul(i,n) + vol(i,ip) *
952 + ( px(i,n,ip)*px(i,n,ip) + py(i,n,ip)*py(i,n,ip)
953 + + pz(i,n,ip)*pz(i,n,ip) )
959 aa =
max(ul(i,1),ul(i,2),ul(i,3),ul(i,4))
960 bb =
max(ul(i,5),ul(i,6),ul(i,7),ul(i,8),ul(i,9),ul(i,10))
961 deltax2(i) = aa/
max(aa,bb)
963 bb = bb*fourty8/seven
964 deltax(i) = sqrt(two*volg(i)/
max(aa,bb))
969 IF(isrot==2.AND.(iint==0.OR.idt1sol>0))
THEN
971 b1(i) = ty(i)*sz(i) - sy(i)*tz(i)
972 b2(i) = ry(i)*tz(i) - ty(i)*rz(i)
973 b3(i) = sy(i)*rz(i) - ry(i)*sz(i)
974 bb4(i) = -(b1(i) + b2(i) + b3(i))
976 c1(i) = tz(i)*sx(i) - sz(i)*tx(i)
977 c2(i) = rz(i)*tx(i) - tz(i)*rx(i)
978 c3(i) = sz(i)*rx(i) - rz(i)*sx(i)
979 c4(i) = -(c1(i) + c2(i) + c3(i))
981 d1(i) = tx(i)*sy(i) - sx(i)*ty(i)
982 d2(i) = rx(i)*ty(i) - tx(i)*ry(i)
983 d3(i) = sx(i)*ry(i) - rx(i)*sy(i)
984 d4(i) = -(d1(i) + d2(i) + d3(i))
985 det6 = rx(i)*b1(i)+ry(i)*c1(i)+rz(i)*d1(i)
1002 aa =
max(rx(i)*rx(i)+ry(i)*ry(i)+rz(i)*rz(i),
1003 . sx(i)*sx(i)+sy(i)*sy(i)+sz(i)*sz(i),
1004 . tx(i)*tx(i)+ty(i)*ty(i)+tz(i)*tz(i),
1005 . (rx(i)-sx(i))*(rx(i)-sx(i))
1006 + + (ry(i)-sy(i))*(ry(i)-sy(i))
1007 + + (rz(i)-sz(i))*(rz(i)-sz(i)),
1008 . (sx(i)-tx(i))*(sx(i)-tx(i))
1009 + + (sy(i)-ty(i))*(sy(i)-ty(i))
1010 + + (sz(i)-tz(i))*(sz(i)-tz(i)),
1011 . (tx(i)-rx(i))*(tx(i)-rx(i))
1012 + + (ty(i)-ry(i))*(ty(i)-ry(i))
1013 + + (tz(i)-rz(i))*(tz(i)-rz(i)))
1018 dd = p4x1(i)*p4x1(i)+p4y1(i)*p4y1(i)+p4z1(i)*p4z1
1019 . + p4x2(i)*p4x2(i)+p4y2(i)*p4y2(i)+p4z2(i)*p4z2(i)
1020 . + p4x3(i)*p4x3(i)+p4y3(i)*p4y3(i)+p4z3(i)*p4z3(i)
1021 . + p4x4(i)*p4x4(i)+p4y4(i)*p4y4(i)+p4z4(i)*p4z4(i)
1022 deltax(i) = one / sqrt(dd)
1025 ELSEIF(iformdt==1)
THEN
1028 ld =two*sqrt(
max(one-gfac,zero))+one
1030 pxx(i)=p4x1(i)*p4x1(i)+p4x2(i)*p4x2(i)+p4x3(i)*p4x3(i)+p4x4(i)*p4x4(i)
1031 pyy(i)=p4y1(i)*p4y1(i)+p4y2(i)*p4y2(i)+p4y3(i)*p4y3(i)+p4y4(i)*p4y4(i)
1032 pzz(i)=p4z1(i)*p4z1(i)+p4z2(i)*p4z2(i)+p4z3(i)*p4z3(i)+p4z4(i)*p4z4(i)
1033 pxy(i)=p4x1(i)*p4y1(i)+p4x2(i)*p4y2(i)+p4x3(i)*p4y3(i)+p4x4(i)*p4y4(i)
1034 pxz(i)=p4x1(i)*p4z1(i)+p4x2(i)*p4z2(i)+p4x3(i)*p4z3(i)+p4x4(i)*p4z4(i)
1035 pyz(i)=p4y1(i)*p4z1(i)+p4y2(i)*p4z2(i)+p4y3(i)*p4z3(i)+p4y4(i)*p4z4(i)
1037 aa = -(pxx(i)+pyy(i)+pzz(i))
1038 bb = (pxx(i)*pyy(i)+pxx(i)*pzz(i)+pyy(i)*pzz(i)-pxy(i)**2-pxz(i)**2-pyz(i)**2)
1040 dd = two*sqrt(third*
max(-p,zero))-third*aa
1044 deltax(i) = one / sqrt(dd)
1047 ELSEIF(iformdt==2)
THEN
1051 pxx(i)=p4x1(i)*p4x1(i)+p4x2(i)*p4x2(i)+p4x3(i)*p4x3(i)+p4x4(i)*p4x4(i)
1052 pyy(i)=p4y1(i)*p4y1(i)+p4y2(i)*p4y2(i)+p4y3(i)*p4y3(i)+p4y4(i)*p4y4(i)
1053 pzz(i)=p4z1(i)*p4z1(i)+p4z2(i)*p4z2(i)+p4z3(i)*p4z3(i)+p4z4(i)*p4z4(i)
1054 pxy(i)=p4x1(i)*p4y1(i)+p4x2(i)*p4y2(i)+p4x3(i)*p4y3(i)+p4x4(i)*p4y4(i)
1055 pxz(i)=p4x1(i)*p4z1(i)+p4x2(i)*p4z2(i)+p4x3(i)*p4z3(i)+p4x4(i)*p4z4(i)
1056 pyz(i)=p4y1(i)*p4z1(i)+p4y2(i)*p4z2(i)+p4y3(i)*p4z3(i)+p4y4(i)*p4z4(i)
1058 aa = -(pxx(i)+pyy(i)+pzz(i))
1059 bb = gfac*(pxx(i)*pyy(i)+pxx(i)*pzz(i)+pyy(i)*pzz(i)-pxy(i)**2-pxz(i)**2-pyz(i)**2)
1061 dd = two*sqrt(third*
max(-p,zero))-third*aa
1063 deltax(i) = one / sqrt(dd)
1070 a1x = ry(i)*sz(i)-rz(i)*sy(i)
1071 a1y = rz(i)*sx(i)-rx(i)*sz(i)
1072 a1z = rx(i)*sy(i)-ry(i)*sx(i)
1073 a1 = a1x*a1x+a1y*a1y+a1z*a1z
1075 a2x = sy(i)*tz(i)-sz(i)*ty(i)
1076 a2y = sz(i)*tx(i)-sx(i)*tz(i)
1077 a2z = sx(i)*ty(i)-sy(i)*tx(i)
1078 a2 = a2x*a2x+a2y*a2y+a2z*a2z
1080 a3x = ty(i)*rz(i)-tz(i)*ry(i)
1081 a3y = tz(i)*rx(i)-tx(i)*rz(i)
1082 a3z = tx(i)*ry(i)-ty(i)*rx(i)
1083 a3 = a3x*a3x+a3y*a3y+a3z*a3z
1088 a4 = a4x*a4x+a4y*a4y+a4z*a4z
1090 deltax(i) = six*volg(i)/sqrt(
max
1101 aa =
max(rx(i)*rx(i)+ry(i)*ry(i)+rz(i)*rz(i),
1102 . sx(i)*sx(i)+sy(i)*sy(i)+sz(i)*sz(i),
1103 . tx(i)*tx(i)+ty(i)*ty(i)+tz(i)*tz(i),
1104 . (rx(i)-sx(i))*(rx(i)-sx(i))
1105 + + (ry(i)-sy(i))*(ry(i)-sy(i))
1106 + + (rz(i)-sz(i))*(rz(i)-sz(i)),
1107 . (sx(i)-tx(i))*(sx(i)-tx(i))
1108 + + (sy(i)-ty(i))*(sy(i)-ty(i))
1109 + + (sz(i)-tz(i))*(sz(i)-tz(i)),
1110 . (tx(i)-rx(i))*(tx(i)-rx(i))
1111 + + (ty(i)-ry(i))*(ty(i)-ry(i))
1112 + + (tz(i)-rz(i))*(tz(i)-rz(i)))
1121 1000
FORMAT(/
' ZERO OR NEGATIVE VOLUME : 10 NODES TETRAHEDRON NB ',i10,
1122 .
' INTEGRATION POINT NB ',i1/)
1123 1100
FORMAT(/' zero or negative volume : 4 nodes tetrahedron nb
',I10,
1124 . ' integration point nb
',I1/)
1125 2000 FORMAT(/' zero or negative volume : delete 3d-element nb
',I10/)
1126 3000 FORMAT(/' zero or negative volume : 3d-element nb:
',I10/,
1127 + ' element is switched to small strain option
'/)
1128 4000 FORMAT(/' zero or negative volume : 3d-element nb:
',I10/)