35 . X ,IXS , V , W ,GAMA0,GAMA,
36 . X1 , X2 , X3 , X4 , X5 , X6 ,
37 . Y1 , Y2 , Y3 , Y4 , Y5 , Y6 ,
38 . Z1 , Z2 , Z3 , Z4 , Z5 , Z6 ,
39 . VX1, VX2, VX3, VX4, VX5, VX6 ,
40 . VY1, VY2, VY3, VY4, VY5, VY6 ,
41 . VZ1, VZ2, VZ3, VZ4, VZ5, VZ6 ,
42 . VD2,VIS,OFFG,OFF,SAV,RHO,RHOO ,
43 . R11, R12, R13, R21, R22, R23, R31, R32, R33,
44 . NC1,NC2,NC3,NC4,NC5,NC6,NGL,MXT,NGEO,
45 . IOUTPRT, VGAX, VGAY, VGAZ, VGA2,DI,
46 . NEL, XGAX, XGAY, XGAZ, XGXA2, XGYA2, XGZA2,
47 . XGXYA, XGYZA, XGZXA, IPARG,GAMA_R)
48 use element_mod ,
only : nixs
52#include "implicit_f.inc"
60#include "vect01_c.inc"
67 . X(3,*),V(3,*),W(3,*), VIS(*),
68 . X1(*), X2(*), X3(*), (*), X5(*), X6(*),
69 . Y1(*), Y2(*), Y3(*), Y4(*), Y5(*), Y6(*),
70 . Z1(*), Z2(*), (*), Z4(*), Z5(*), Z6(*),
71 . VX1(*), VX2(*), VX3(*), VX4(*), VX5(*), VX6(*),
72 . VY1(*), VY2(*), VY3(*), VY4(*), VY5(*), VY6(*),
73 . VZ1(*), VZ2(*), VZ3(*), VZ4(*), VZ5(*), VZ6(*),
74 . VD2(*), OFFG(*), OFF(*), RHO(*), RHOO(*),
75 . R11(MVSIZ),R12(MVSIZ),R13(MVSIZ),
76 . R21(MVSIZ),R22(MVSIZ),R23(MVSIZ),
77 . r31(mvsiz),r32(mvsiz),r33(mvsiz),
78 . rx(mvsiz) , ry(mvsiz) , rz(mvsiz) ,
79 . sx(mvsiz) , sy(mvsiz) , sz(mvsiz) ,
80 . tx(mvsiz) , ty(mvsiz) , tz(mvsiz) ,
81 . gama0(nel,6),gama(mvsiz,6),
82 . vgax(*), vgay(*), vgaz(*), vga2(*),di(mvsiz,6),
83 . xgax(*), xgay(*), xgaz(*),
84 . xgxa2(mvsiz),xgya2(mvsiz),xgza2(mvsiz),
85 . xgxya(mvsiz),xgyza(mvsiz),xgzxa(mvsiz),gama_r(nel,6)
88 INTEGER NC1(*), NC2(*), NC3(*), NC4(*),
89 . NC5(*), NC6(*), MXT(*), NGL(*),NGEO(*)
90 INTEGER IXS(NIXS,*),IOUTPRT,IPARG(*)
100 . xx,yy,zz,xy,xz,yz,rtr(6),abc,xxyz2,zzxy2,yyxz2,deta
141 off(i) =
min(one,abs(offg(i)))
142 off_l =
min(off_l,offg(i))
194 vgax(i)=vx1(i)+vx2(i)+vx3(i)+vx4(i)+vx5(i)+vx6(i)
195 vgay(i)=vy1(i)+vy2(i)+vy3(i)+vy4(i)+vy5(i)+vy6(i)
196 vgaz(i)=vz1(i)+vz2(i)+vz3(i)+vz4(i)+vz5(i)+vz6(i)
197 vga2(i)=vx1(i)*vx1(i)+vx2(i)*vx2(i)+vx3(i)*vx3(i)+vx4(i)*vx4(i)
198 1 +vx5(i)*vx5(i)+vx6(i)*vx6(i)
199 2 +vy1(i)*vy1(i)+vy2(i)*vy2(i)+vy3(i)*vy3(i)+vy4(i)*vy4(i)
200 3 +vy5(i)*vy5(i)+vy6(i)*vy6(i)
201 4 +vz1(i)*vz1(i)+vz2(i)*vz2(i)+vz3(i)*vz3(i)+vz4(i)*vz4(i)
202 5 +vz5(i)*vz5(i)+vz6(i)*vz6(i)
204 IF(iparg(80)==1)
THEN
206 xgax(i)=x1(i)+x2(i)+x3(i)+x4(i)+x5(i)+x6(i)
207 xgay(i)=y1(i)+y2(i)+y3(i)+y4(i)+y5(i)+y6(i)
208 xgaz(i)=z1(i)+z2(i)+z3(i)+z4(i)+z5(i)+z6(i)
209 xgxa2(i)=x1(i)**2+x2(i)**2+x3(i)**2+x4(i)**2
211 xgya2(i)=y1(i)**2+y2(i)**2+y3(i)**2+y4(i)**2
213 xgza2(i)=z1(i)**2+z2(i)**2+z3(i)**2+z4(i)**2
215 xgxya(i)=x1(i)*y1(i)+x2(i)*y2(i)+x3(i)*y3(i)+x4(i)*y4(i)
216 1 +x5(i)*y5(i)+x6(i)*y6(i)
217 xgyza(i)=y1(i)*z1(i)+y2(i)*z2(i)+y3(i)*z3(i)+y4(i)*z4(i)
218 1 +y5(i)*z5(i)+y6(i)*z6(i)
219 xgzxa(i)=z1(i)*x1(i)+z2(i)*x2(i)+z3(i)*x3(i)+z4(i)*x4(i)
220 1 +z5(i)*x5(i)+z6(i)*x6(i)
226 xl=one_over_6*(x1(i)+x2(i)+x3(i)+x4(i)+x5(i)+x6(i))
227 yl=one_over_6*(y1(i)+y2(i)+y3(i)+y4(i)+y5(i)+y6(i))
228 zl=one_over_6*(z1(i)+z2(i)+z3(i)+z4(i)+z5(i)+z6(i))
257 6 r13, r21, r22, r23,
263 gama_r(lft:llt,1) = r11(lft:llt)
264 gama_r(lft:llt,2) = r21(lft:llt)
265 gama_r(lft:llt,3) = r31(lft:llt)
266 gama_r(lft:llt,4) = r12(lft:llt)
267 gama_r(lft:llt,5) = r22(lft:llt)
268 gama_r(lft:llt,6) = r32(lft:llt)
273 IF(ismstr<=4.AND.jlag>0)
THEN
294 off(i) = offg(i) -one
295 xl=one_over_6*(x1(i)+x2(i)+x3(i)+x4(i)+x5(i)+x6(i))
296 yl=one_over_6*(y1(i)+y2(i)+y3(i)+y4(i)+y5(i)+y6(i))
297 zl=one_over_6*(z1(i)+z2(i)+z3(i)+z4(i)+z5(i)+z6(i))
317 xl=r11(i)*x1(i)+r21(i)*y1(i)+r31(i)*z1(i)
318 yl=r12(i)*x1(i)+r22(i)*y1(i)+r32(i)*z1(i)
319 zl=r13(i)*x1(i)+r23(i)*y1(i)+r33(i)*z1(i)
323 xl=r11(i)*x2(i)+r21(i)*y2(i)+r31(i)*z2(i)
324 yl=r12(i)*x2(i)+r22(i)*y2(i)+r32(i)*z2(i)
325 zl=r13(i)*x2(i)+r23(i)*y2(i)+r33(i)*z2(i)
329 xl=r11(i)*x3(i)+r21(i)*y3(i)+r31(i)*z3(i)
330 yl=r12(i)*x3(i)+r22(i)*y3(i)+r32(i)*z3(i)
331 zl=r13(i)*x3(i)+r23(i)*y3(i)+r33(i)*z3(i)
335 xl=r11(i)*x4(i)+r21(i)*y4(i)+r31(i)*z4(i)
336 yl=r12(i)*x4(i)+r22(i)*y4(i)+r32(i)*z4(i)
341 xl=r11(i)*x5(i)+r21(i)*y5(i)+r31(i)*z5(i)
342 yl=r12(i)*x5(i)+r22(i)*y5(i)+r32(i)*z5(i)
347 xl=r11(i)*x6(i)+r21(i)*y6(i)+r31(i)*z6(i)
348 yl=r12(i)*x6(i)+r22(i)*y6(i)+r32(i)*z6(i)
375 1 r11, r12, r13, r21,
376 2 r22, r23, r31, r32,
380 1 r11, r12, r13, r21,
381 2 r22, r23, r31, r32,
385 1 r11, r12, r13, r21,
386 2 r22, r23, r31, r32,
390 xl=r11(i)*x4(i)+r21(i)*y4(i)+r31(i)*z4(i)
391 yl=r12(i)*x4(i)+r22(i)*y4(i)+r32(i)*z4(i)
396 xl=r11(i)*x5(i)+r21(i)*y5(i)+r31(i)*z5(i)
397 yl=r12(i)*x5(i)+r22(i)*y5(i)+r32(i)*z5(i)
403 yl=r12(i)*x6(i)+r22(i)
408 off(i) =
min(one,offg(i))
416 1 r11, r12, r13, r21,
417 2 r22, r23, r31, r32,
418 3 r33, vx1, vy1, vz1,
422 2 r22, r23, r31, r32,
423 3 r33, vx2, vy2, vz2,
426 1 r11, r12, r13, r21,
427 2 r22, r23, r31, r32,
428 3 r33, vx3, vy3, vz3,
431 1 r11, r12, r13, r21,
432 2 r22, r23, r31, r32,
433 3 r33, vx4, vy4, vz4,
436 1 r11, r12, r13, r21,
437 2 r22, r23, r31, r32,
438 3 r33, vx5, vy5, vz5,
441 1 r11, r12, r13, r21,
442 2 r22, r23, r31, r32,
443 3 r33, vx6, vy6, vz6,
451 xx = x1(i)*x1(i)+x2(i)*x2(i)+x3(i)*x3(i)
452 1 +x4(i)*x4(i)+x5(i)*x5(i)+x6(i)*x6(i)
453 yy = y1(i)*y1(i)+y2(i)*y2(i)+y3(i)*y3(i)
454 1 +y4(i)*y4(i)+y5(i)*y5(i)+y6(i)*y6(i)
455 xy = x1(i)*y1(i)+x2(i)*y2(i)+x3(i)*y3(i)
456 1 +x4(i)*y4(i)+x5(i)*y5(i)+x6(i)*y6(i)
457 xz = x1(i)*z1(i)+x2(i)*z2(i)+x3(i)*z3(i)
458 1 +x4(i)*z4(i)+x5(i)*z5(i)+x6(i)*z6(i)
459 yz = y1(i)*z1(i)+y2(i)*z2(i)+y3(i)*z3(i)
460 1 +y4(i)*z4(i)+y5(i)*z5(i)+y6(i)*z6(i)
461 zz = z1(i)*z1(i)+z2(i)*z2(i)+z3(i)*z3(i)
462 1 +z4(i)*z4(i)+z5(i)*z5(i)+z6(i)*z6(i)
470 abc = rtr(1)*rtr(2)*rtr(3)
471 xxyz2 = rtr(1)*rtr(6)*rtr(6)
472 yyxz2 = rtr(2)*rtr(5)*rtr(5)
473 zzxy2 = rtr(3)*rtr(4)*rtr(4)
474 deta = abc + two*rtr(4)*rtr(5)*rtr(6)-xxyz2-yyxz2-zzxy2
480 di(i,1) = (abc-xxyz2)*deta/rtr(1)
481 di(i,2) = (abc-yyxz2)*deta/rtr(2)
482 di(i,3) = (abc-zzxy2)*deta/rtr(3)
483 di(i,4) = (rtr(5)*rtr(6)-rtr(4)*rtr(3))*deta
484 di(i,5) = (rtr(6)*rtr(4)-rtr(5)*rtr(2))*deta
485 di(i,6) = (rtr(4)*rtr(5)-rtr(6)*rtr(1))*deta
493 6 vx3, vx4, vx5, vx6,
494 7 vy1, vy2, vy3, vy4,
495 8 vy5, vy6, vz1, vz2,
496 9 vz3, vz4, vz5, vz6,
subroutine s6rcoor3(x, ixs, v, w, gama0, gama, x1, x2, x3, x4, x5, x6, y1, y2, y3, y4, y5, y6, z1, z2, z3, z4, z5, z6, vx1, vx2, vx3, vx4, vx5, vx6, vy1, vy2, vy3, vy4, vy5, vy6, vz1, vz2, vz3, vz4, vz5, vz6, vd2, vis, offg, off, sav, rho, rhoo, r11, r12, r13, r21, r22, r23, r31, r32, r33, nc1, nc2, nc3, nc4, nc5, nc6, ngl, mxt, ngeo, ioutprt, vgax, vgay, vgaz, vga2, di, nel, xgax, xgay, xgaz, xgxa2, xgya2, xgza2, xgxya, xgyza, xgzxa, iparg, gama_r)