37 1 AREA,VXYZ, RXYZ,VCORE,JAC,HX,HY,VKSI,VETA,
38 2 VQN,VQG,VQ,VJFI,VNRM,VASTN,NPLAT,IPLAT,
39 3 X13_T ,X24_T ,Y13_T,Y24_T,OFF,DI,NLAY,
40 4 IREP ,NPT ,ISMSTR,NEL ,ISROT ,
41 5 SMSTR ,DIR_A ,DIR_B ,FACN ,ZL1 ,
42 6 R11 ,R12 ,R13 ,R21 ,R22 ,R23 ,
43 7 R31 ,R32 ,R33 ,INOD ,RLZ ,
44 8 THK ,IPLYCXFEM ,UX1 ,UX2 ,UX3 ,
45 9 UX4 ,UY1 ,UY2 ,UY3 ,UY4 ,
46 A VL1 ,VL2 ,VL3 ,VL4 ,XL2 ,
47 B XL3 ,XL4 ,YL2 ,YL3 ,YL4 ,XLCOR ,NPINCH)
53 use element_mod ,
only : nixc
57#include "implicit_f.inc"
71 INTEGER JFT,JLT,NNOD,NPLAT,IREP,NPT,NLAY,ISMSTR,ISROT,IPLYCXFEM,NEL,NPINCH
72 INTEGER IXC(NIXC,*),IPLAT(*),INOD(*)
74 my_real x(3,*), v(3,*), vr(3,*),pm(npropm,*),offg(*),off(*),
75 . vcore(mvsiz,3,nnod),vxyz(mvsiz,3,nnod),
area(*),vjfi(mvsiz,6,4),
76 . vqn(mvsiz,9,nnod),vqg(mvsiz,9,nnod),vq(mvsiz,3,3),rxyz(mvsiz,2,nnod),
77 . ll(*),vastn(mvsiz,4,nnod),vnrm(mvsiz,3,nnod),
78 . jac(mvsiz,4),hx(mvsiz,4),hy(mvsiz,4),veta(4,4),vksi(4,4),y24_t(*),
79 . x13_t(*),x24_t(*),y13_t(*),off_l
80 . dir_a(nel,*),dir_b(nel,*),facn(mvsiz,2),
81 . zl1(mvsiz),r11(mvsiz),r12(mvsiz),r13(mvsiz),
82 . r21(mvsiz),r22(mvsiz),r23(mvsiz),r31(mvsiz),r32(mvsiz),
83 . r33(mvsiz),rlz(mvsiz,4),thk(mvsiz),
84 . ux1(*),ux2(*),ux3(*),ux4(*),uy1(*),uy2(*),uy3(*),uy4(*),
85 . vl1(mvsiz,3),vl2(mvsiz,3),vl3(mvsiz,3),vl4(mvsiz,3),
86 . xl2(mvsiz),xl3(mvsiz),xl4(mvsiz),yl2(mvsiz),yl3(mvsiz),yl4(mvsiz),
91 TYPE(elbuf_struct_) :: ELBUF_STR
133 INTEGER I, II(6), J, K, L, M, I1, I2, I3, I4, EP, SPLAT
134 INTEGER NN(4),JPLAT(MVSIZ)
136 . XX2,XX3,XX4,YY1,YY2,YY3,YY4,ZZ1,ZZ2,ZZ3,ZZ4
138 . C1,C2,L13(MVSIZ),L24(MVSIZ),
141 . TOL,PG,J0,J1,J2,DETA,COREL(3,4),S1
143 . X13,X24,Y13,MX13,MX23,MX34,MY13,Z1,Z2,GAMA1,GAMA2,
144 . X21,X34,Y21,Y34,Z21,Z34,X41,X32,Y41,Y32,Z41,Z32,L12,L34,
145 . a_4,sl,sz2,sz,jmx13,jmy13,jmz13,j2myz,lm(mvsiz),y24,
146 . my23,my34,scal,g1x1,g1x3,g1y1,g1y3,g2x1,g2x2,g2y1,g2y2,
147 . ar(3),ad(nnod),btb(6),xx1,yy,zz,xy,xz1,yz,d(6),
148 . alr(3),ald(nnod),dbad(3),abc,xxyz2,zzxy2,yyxz2
150 . lxyz0(3),deta1(mvsiz),rx(mvsiz), ry(mvsiz), rz(mvsiz),
151 . sx(mvsiz),sy(mvsiz),
152 . area_i(mvsiz),ssz(mvsiz)
155 . vg13(3),vg24(3),vghi(3),v13(mvsiz,3),v24(mvsiz,3),vhi(mvsiz,3),
157 . dt05,dt025,exz,eyz,ddrx,ddry,v13x,v24x,vhix,ddrz1,ddrz2,ddrz,
158 . vnx1, vny1, vnz1,vnx2,vny2,vnz2,vnx3,vny3,vnz3,vnx4,vny4,
160 DATA pg/.577350269189626/
167 IF (isrot > 0 ) tol=em8
169 vksi(1,1)=-fourth*(one+pg)
171 vksi(3,1)= fourth*(one-pg)
173 veta(1,1)=-fourth*(one+pg)
174 veta(2,1)=-fourth*(one-pg)
203 rx(i)=x(1,ixc(3,i))+x(1,ixc(4,i))-x(1,ixc(2,i))-x(1,ixc(5,i))
204 sx(i)=x(1,ixc(4,i))+x(1,ixc(5,i))-x(1,ixc(2,i))-x(1,ixc(3,i))
205 ry(i)=x(2,ixc(3,i))+x(2,ixc(4,i))-x(2,ixc(2,i))-x(2,ixc(5,i))
206 sy(i)=x(2,ixc(4,i))+x(2,ixc(5,i))-x(2,ixc(2,i))-x(2,ixc(3,i
207 rz(i)=x(3,ixc(3,i))+x(3,ixc(4,i))-x(3,ixc(2,i))-x(3,ixc(5,i))
208 ssz(i)=x(3,ixc(4,i))+x(3,ixc(5,i))-x(3,ixc(2,i))-x(3,ixc
217 . r11,r12,r13,r21,r22,r23,r31,r32,r33,deta1,offg )
219 area(i)=fourth*deta1(i)
220 area_i(i)=one/
area(i)
239 lxyz0(1)=fourth*(x(1,l)+x(1,m)+x(1,j)+x(1,k))
240 lxyz0(2)=fourth*(x(2,l)+x(2,m)+x(2,j)+x(2,k))
241 lxyz0(3)=fourth*(x(3,l)+x(3,m)+x(3,j)+x(3,k))
247 xl2(i)=r11(i)*xx1+r21(i)*yy1+r31(i)*zz1
248 yl2(i)=r12(i)*xx1+r22(i)*yy1+r32(i)*zz1
253 zl1(i)=r13(i)*xx2+r23(i)*yy2+r33(i)*zz2
258 xl3(i)=r11(i)*xx3+r21(i)*yy3+r31(i)*zz3
259 yl3(i)=r12(i)*xx3+r22(i)*yy3+r32(i)*zz3
264 xl4(i)=r11(i)*xx4+r21(i)*yy4+r31(i)*zz4
265 yl4(i)=r12(i)*xx4+r22(i)*yy4+r32(i)*zz4
279 ELSEIF(ismstr==11)
THEN
281 IF(abs(offg(i))==one)offg(i)=sign(two,offg(i))
290 IF(abs(offg(i))==two)
THEN
291 ux2(i) = xl2(i)-smstr(ii(1)+i)
292 uy2(i) = yl2(i)-smstr(ii(2)+i)
293 ux3(i) = xl3(i)-smstr(ii(3)+i)
294 uy3(i) = yl3(i)-smstr(ii(4)+i)
295 ux4(i) = xl4(i)-smstr(ii(5)+i)
296 uy4(i) = yl4(i)-smstr(ii(6)+i)
297 xl2(i) = smstr(ii(1)+i)
298 yl2(i) = smstr(ii(2)+i)
299 xl3(i) = smstr(ii(3)+i)
300 yl3(i) = smstr(ii(4)+i)
301 xl4(i) = smstr(ii(5)+i)
302 yl4(i) = smstr(ii(6)+i)
304 area(i)=half*((xl2(i)-xl4(i))*yl3(i)-xl3(i)*(yl2(i)-yl4(i)))
305 area_i(i)=one/
max(em20,
area(i))
307 smstr(ii(1)+i)=xl2(i)
308 smstr(ii(2)+i)=yl2(i)
309 smstr(ii(3)+i)=xl3(i)
310 smstr(ii(4)+i)=yl3(i)
311 smstr(ii(5)+i)=xl4(i)
312 smstr(ii(6)+i)=yl4(i)
315 ELSEIF(ismstr==1.OR.ismstr==2)
THEN
317 IF(abs(offg(i))==two)
THEN
318 xl2(i)=smstr(ii(1)+i)
319 yl2(i)=smstr(ii(2)+i)
320 xl3(i)=smstr(ii(3)+i)
321 yl3(i)=smstr(ii(4)+i)
322 xl4(i)=smstr(ii(5)+i)
323 yl4(i)=smstr(ii(6)+i)
325 area(i)=half*((xl2(i)-xl4(i))*yl3(i)-xl3(i)*(yl2(i)-yl4(i)))
326 area_i(i)=one/
max(em20,
area(i))
328 smstr(ii(1)+i)=xl2(i)
329 smstr(ii(2)+i)=yl2(i)
330 smstr(ii(3)+i)=xl3(i)
331 smstr(ii(4)+i)=yl3(i)
332 smstr(ii(5)+i)=xl4(i)
333 smstr(ii(6)+i)=yl4(i)
339 IF(offg(i)==one)offg(i)=two
345 CALL cortdir3(elbuf_str,dir_a ,dir_b ,jft ,jlt ,
346 . nlay ,irep ,rx ,ry ,rz ,
347 . sx ,sy ,ssz ,r11 ,r21 ,
348 . r31 ,r12 ,r22 ,r32 ,nel
351 lxyz0(1)=fourth*(xl2(ep)+xl3(ep)+xl4(ep))
352 lxyz0(2)=fourth*(yl2(ep)+yl3(ep)+yl4(ep))
353 vcore(ep,1,1)=-lxyz0(1)
354 vcore(ep,1,2)=xl2(ep)-lxyz0(1)
355 vcore(ep,1,3)=xl3(ep)-lxyz0(1)
356 vcore(ep,1,4)=xl4(ep)-lxyz0(1)
357 vcore(ep,2,1)=-lxyz0(2)
358 vcore(ep,2,2)=yl2(ep)-lxyz0(2)
359 vcore(ep,2,3)=yl3(ep)-lxyz0(2)
360 vcore(ep,2,4)=yl4(ep)-lxyz0(2)
362 x13_t(ep) =(vcore(ep,1,1)-vcore(ep,1,3))*half
363 x24_t(ep) =(vcore(ep,1,2)-vcore(ep,1,4))*half
364 y13_t(ep) =(vcore(ep,2,1)-vcore
365 y24_t(ep) =(vcore(ep,2,2)-vcore(ep,2,4))*half
366 l13(ep)=x13_t(ep)*x13_t(ep)+y13_t(ep)*y13_t(ep)
367 l24(ep)=x24_t(ep)*x24_t(ep)+y24_t(ep)*y24_t(ep)
368 ll(ep)=
max(l13(ep),l24(ep))
369 c1 =vcore(ep,1,2)*vcore(ep
370 c2 =vcore(ep,1,1)*vcore(ep,2,3)-vcore(ep,2,1)*vcore(ep,1,3)
371 lm(ep) =
max(abs(c1),abs(c2))
394 vg13(1)=vl1(ep,1)-vl3(ep,1)
395 vg24(1)=vl2(ep,1)-vl4(ep,1)
396 vghi(1)=vl1(ep,1)-vl2(ep,1)+vl3(ep,1)-vl4(ep,1)
398 vg13(2)=vl1(ep,2)-vl3(ep,2)
399 vg24(2)=vl2(ep,2)-vl4(ep,2)
400 vghi(2)=vl1(ep,2)-vl2(ep,2)+vl3(ep,2)-vl4(ep,2)
402 vg13(3)=vl1(ep,3)-vl3(ep,3)
403 vg24(3)=vl2(ep,3)-vl4(ep,3)
404 vghi(3)=vl1(ep,3)-vl2(ep,3)+vl3(ep,3)-vl4(ep,3)
406 v13(ep,1)=(vq(ep,1,1)*vg13(1)+vq(ep,2,1)*vg13(2)+vq(ep,3,1)*vg13(3))
407 v24(ep,1)=(vq(ep,1,1)*vg24(1)+vq(ep,2,1)*vg24(2)+vq(ep,3,1)*vg24(3))
408 vhi(ep,1)=(vq(ep,1,1)*vghi(1)+vq(ep,2,1)*vghi(2)+vq(ep,3,1)*vghi(3))
409 v13(ep,2)=(vq(ep,1,2)*vg13(1)+vq(ep,2,2)*vg13(2)+vq(ep,3,
410 v24(ep,2)=(vq(ep,1,2)*vg24(1)+vq(ep,2,2)*vg24(2)+vq(ep,3,2)*vg24(3))
411 vhi(ep,2)=(vq(ep,1,2)*vghi(1)+vq(ep,2,2)*vghi(2)+vq(ep,3,2)*vghi(3))
412 v13(ep,3)=(vq(ep,1,3)*vg13(1)+vq(ep,2,3)*vg13(2)+vq(ep,3,3)*vg13(3))
413 v24(ep,3)=(vq(ep,1,3)*vg24(1)+vq(ep,2,3)*vg24(2)+vq(ep,3,3)*vg24(3))
414 vhi(ep,3)=(vq(ep,1,3)*vghi(1)+vq(ep,2,3)*vghi(2)+vq(ep,3,3)*vghi(3))
417 IF (impl_s==0.OR.imp_lr>0)
THEN
421 exz = y24_t(i)*v13(i,3)-y13_t(i)*v24(i,3)
422 eyz = -x24_t(i)*v13(i,3)+x13_t(i)*v24(i,3)
423 ddry=dt05*exz*area_i(i)
424 ddrx=dt05*eyz*area_i(i)
428 ddrz1=dt025*(v13(i,2)-v24(i,2))/(x13_t(i)-x24_t(i))
429 IF (abs(x13_t(i)-x24_t(i))<em10) ddrz1 = zero
430 v13(i,1) = v13(i,1)-ddry*v13(i,3)-ddrz1*v13(i,2)
431 v24(i,1) = v24(i,1)-ddry*v24(i,3)-ddrz1*v24(i,2)
432 vhi(i,1) = vhi(i,1)-ddry*vhi(i,3)-ddrz1*vhi(i,2)
433 ddrz2=dt025*(v13x+v24x)/(y13_t(i)+y24_t(i))
434 IF (abs(y13_t(i)+y24_t(i))<em10) ddrz2 = zero
435 v13(i,2) = v13(i,2)-ddrx*v13(i,3)-ddrz2*v13x
436 v24(i,2) = v24(i,2)-ddrx*v24(i,3)-ddrz2*v24x
437 vhi(i,2) = vhi(i,2)-ddrx*vhi(i,3)-ddrz2*vhix
446 IF ((z2<tol*ll(ep).OR.npt==1).AND.npinch==0)
THEN
455 iplat(ep)=jplat(ep-nplat)
457#include "vectorize.inc"
465 mx13=(vcore(ep,1,1)+vcore(ep,1,3))*half
466 my13=(vcore(ep,2,1)+vcore(ep,2,3))*half
467 mx23=(vcore(ep,1,2)+vcore(ep,1,3))*half
468 mx34=(vcore(ep,1,3)+vcore(ep,1,4))*half
469 my23=(vcore(ep,2,2)+vcore(ep,2,3))*half
470 my34=(vcore(ep,2,3)+vcore(ep,2,4))*half
471 x13_t(ep) =x13*area_i(ep)
472 x24_t(ep) =x24*area_i(ep)
473 y13_t(ep) =y13*area_i(ep)
474 y24_t(ep) =y24*area_i(ep)
476 gama1=-mx13*y24+my13*x24
477 gama2= mx13*y13-my13*x13
484 rr(1,1) =vq(ep,1,1)*vr(1,nn(1))+vq(ep,2,1)*vr(2,nn(1))+vq(ep,3,1)*vr(3,nn(1))
485 rr(1,2) =vq(ep,1,1)*vr(1,nn(2))+vq(ep,2,1)*vr(2,nn(2))+vq(ep,3,1)*vr(3,nn(2))
486 rr(1,3) =vq(ep,1,1)*vr(1,nn(3))+vq(ep,2,1)*vr(2,nn(3))+vq(ep,3,1)*vr(3,nn(3))
487 rr(1,4) =vq(ep,1,1)*vr(1,nn(4))+vq(ep,2,1)*vr(2,nn(4))+vq(ep,3,1)*vr(3,nn(4))
488 rr(2,1) =vq(ep,1,2)*vr(1,nn(1))+vq(ep,2,2)*vr(2,nn(1))+vq(ep,3,2)*vr(3,nn(1))
489 rr(2,2) =vq(ep,1,2)*vr(1,nn(2))+vq(ep,2,2)*vr(2,nn(2))+vq(ep,3,2)*vr(3,nn(2))
490 rr(2,3) =vq(ep,1,2)*vr(1,nn(3))+vq(ep,2,2)*vr(2,nn(3))+vq(ep,3,2)*vr(3,nn(3))
491 rr(2,4) =vq(ep,1,2)*vr(1,nn(4))+vq(ep,2,2)*vr(2,nn(4))+vq(ep,3,2)*vr(3,nn(4))
493 vxyz(ep,1,1)=v13(ep,1)
494 vxyz(ep,2,1)=v13(ep,2)
495 vxyz(ep,3,1)=v13(ep,3)
497 vxyz(ep,1,2)=v24(ep,1)
498 vxyz(ep,2,2)=v24(ep,2)
499 vxyz(ep,3,2)=v24(ep,3)
501 vxyz(ep,1,3)=vhi(ep,1)
502 vxyz(ep,2,3)=vhi(ep,2)
503 vxyz(ep,3,3)=vhi(ep,3)
505 rxyz(ep,1,1)=rr(1,1)-rr(1,3)
506 rxyz(ep,2,1)=rr(2,1)-rr(2,3)
507 rxyz(ep,1,2)=rr(1,2)-rr(1,4)
508 rxyz(ep,2,2)=rr(2,2)-rr(2,4)
509 rxyz(ep,1,3)=rr(1,1)-rr(1,2)+rr(1,3)-rr(1,4)
510 rxyz(ep,2,3)=rr(2,1)-rr(2,2)+rr(2,3)-rr(2,4)
511 rxyz(ep,1,4)=rr(1,1)+rr(1,2)+rr(1,3)+rr(1,4)
512 rxyz(ep,2,4)=rr(2,1)+rr(2,2)+rr(2,3)+rr(2,4)
515 vcore(ep,1,1)=y24_t(ep)
516 vcore(ep,2,1)=-y13_t(ep)
517 vcore(ep,3,1)=-x24_t(ep)
518 vcore(ep,1,2)= x13_t(ep)
519 vcore(ep,2,2)=gama1*area_i(ep)
520 vcore(ep,3,2)=gama2*area_i(ep)
528 j1=(mx23*my13-mx13*my23)*pg
529 j2=-(mx13*my34-mx34*my13)*pg
532 jac(ep,1)=abs(j0+j2-j1)
533 jac(ep,2)=abs(j0+j2+j1)
534 jac(ep,3)=abs(j0-j2+j1)
535 jac(ep,4)=abs(j0-j2-j1)
538 hx(ep,1)=j1/jac(ep,1)
539 hx(ep,2)=j2/jac(ep,2)
540 hx(ep,3)=-j1/jac(ep,3)
541 hx(ep,4)=-j2/jac(ep,4)
544 hy(ep,1)=j1/jac(ep,1)
545 hy(ep,2)=j2/jac(ep,2)
547 hy(ep,4)=-j2/jac(ep,4)
550#include "vectorize.inc"
559 corel(1,1)=vcore(ep,1,1)
560 corel(1,2)=vcore(ep,1,2)
561 corel(1,3)=vcore(ep,1,3)
562 corel(1,4)=vcore(ep,1,4)
563 corel(2,1)=vcore(ep,2,1)
564 corel(2,2)=vcore(ep,2,2)
565 corel(2,3)=vcore(ep,2,3)
566 corel(2,4)=vcore(ep,2,4)
572 mx13=(vcore(ep,1,1)+vcore(ep,1,3))*half
573 my13=(vcore(ep,2,1)+vcore(ep,2,3))*half
574 mx23=(vcore(ep,1,2)+vcore(ep,1,3))*half
575 my23=(vcore(ep,2,2)+vcore(ep,2,3))*half
576 mx34=(vcore(ep,1,3)+vcore(ep,1,4))*half
577 my34=(vcore(ep,2,3)+vcore(ep,2,4))*half
578 x13_t(ep) =x13*area_i(ep)
579 x24_t(ep) =x24*area_i(ep)
580 y13_t(ep) =y13*area_i(ep)
581 y24_t(ep) =y24*area_i(ep)
583 gama1=-mx13*y24+my13*x24
584 gama2= mx13*y13-my13*x13
599 x34 =(corel(1,3)-corel(1,4))*half
601 y34 =(corel(2,3)-corel(2,4))*half
604 l12 = sqrt(x21*x21+y21*y21+z2)
605 l34 = sqrt(x34*x34+y34*y34+z2)
610 x32 =(corel(1,3)-corel(1,2))*half
612 y32 =(corel(2,3)-corel(2,2))*half
626 sl=one/sqrt(sz+sz2*sz2)
631 vqn(ep,7,3)=-vqn(ep,7,1)
632 vqn(ep,8,3)=-vqn(ep,8,1)
633 vqn(ep,7,1)= vqn(ep,7,1)*sl
634 vqn(ep,8,1)= vqn(ep,8,1)*sl
636 vqn(ep,4,1)= vqn(ep,8,1)*vqn(ep,3,1)-vqn(ep,9,1)*vqn(ep,2,1)
637 vqn(ep,5,1)= vqn(ep,9,1)*vqn(ep,1,1)-vqn(ep,7,1)*vqn(ep,3,1)
638 vqn(ep,6,1)= vqn(ep,7,1)*vqn(ep,2,1)-vqn(ep,8,1)*vqn(ep,1,1)
645 sl=one/sqrt(sz+sz2*sz2)
646 vqn(ep,7,3)= vqn(ep,7,3)*sl
647 vqn(ep,8,3)= vqn(ep,8,3)*sl
650 vqn(ep,4,3)= vqn(ep,8,3)*vqn(ep,3,3)-vqn(ep,9,3)*vqn(ep,2,3)
651 vqn(ep,5,3)= vqn(ep,9,3)*vqn(ep,1,3)-vqn(ep,7,3)*vqn(ep,3,3)
652 vqn(ep,6,3)= vqn(ep,7,3)*vqn(ep,2,3)-vqn(ep,8,3)*vqn(ep,1,3)
654 vqn(ep,1,2)=vqn(ep,1,1)
655 vqn(ep,2,2)=vqn(ep,2,1)
656 vqn(ep,3,2)=vqn(ep,3,1)
659 sl=one/sqrt(sz+sz2*sz2)
663 vqn(ep,7,4)=-vqn(ep,7,2)
664 vqn(ep,8,4)=-vqn(ep,8,2)
665 vqn(ep,7,2)= vqn(ep,7,2)*sl
666 vqn(ep,8,2)= vqn(ep,8,2)*sl
668 vqn(ep,4,2)= vqn(ep,8,2)*vqn(ep,3,2)-vqn(ep,9,2)*vqn(ep,2,2)
669 vqn(ep,5,2)= vqn(ep,9,2)*vqn(ep,1,2)-vqn(ep,7,2)*vqn(ep,3,2)
670 vqn(ep,6,2)= vqn(ep,7,2)*vqn(ep,2,2)-vqn(ep,8,2)*vqn(ep,1,2)
672 vqn(ep,1,4)=vqn(ep,1,3)
673 vqn(ep,2,4)=vqn(ep,2,3)
674 vqn(ep,3,4)=vqn(ep,3,3)
676 sl=one/sqrt(sz+sz2*sz2)
677 vqn(ep,7,4)= vqn(ep,7,4)*sl
678 vqn(ep,8,4)= vqn(ep,8,4)*sl
681 vqn(ep,4,4)= vqn(ep,8,4)*vqn(ep,3,4)-vqn(ep,9,4)*vqn(ep,2,4)
682 vqn(ep,5,4)= vqn(ep,9,4)*vqn(ep,1,4)-vqn(ep,7,4)*vqn(ep,3,4)
683 vqn(ep,6,4)= vqn(ep,7,4)*vqn(ep,2,4)-vqn(ep,8,4)*vqn(ep,1,4)
716 vnrm(ep,1,1)=vqn(ep,7,1)+vqn(ep,7,2)
717 vnrm(ep,2,1)=vqn(ep,8,1)+vqn(ep,8,2)
718 vnrm(ep,3,1)=vqn(ep,9,1)+vqn(ep,9,2)
719 c1=sqrt(vnrm(ep,1,1)*vnrm(ep,1,1)+vnrm(ep,2,1)*vnrm(ep,2,1)+vnrm(ep,3,1)*vnrm(ep,3,1))
721 vnrm(ep,1,1)=vnrm(ep,1,1)/c1
722 vnrm(ep,2,1)=vnrm(ep,2,1)/c1
723 vnrm(ep,3,1)=vnrm(ep,3,1)/c1
726 vastn(ep,3,1)=vastn(ep,1,1)
727 vastn(ep,4,1)=vastn(ep,2,1)
729 vnrm(ep,1,2)=vqn(ep,7,4)+vqn(ep,7,3)
730 vnrm(ep,2,2)=vqn(ep,8,4)+vqn(ep,8,3)
731 vnrm(ep,3,2)=vqn(ep,9,4)+vqn(ep,9,3)
732 c1=sqrt(vnrm(ep,1,2)*vnrm(ep,1,2)+vnrm(ep,2,2)*vnrm(ep,2,2)+vnrm(ep,3,2)*vnrm(ep,3,2))
734 vnrm(ep,1,2)=vnrm(ep,1,2)/c1
735 vnrm(ep,2,2)=vnrm(ep,2,2)/c1
736 vnrm(ep,3,2)=vnrm(ep,3,2)/c1
739 vastn(ep,3,2)=vastn(ep,1,2)
740 vastn(ep,4,2)=vastn(ep,2,2)
742 vnrm(ep,1,3)=vqn(ep,7,1)+vqn(ep,7,4)
743 vnrm(ep,2,3)=vqn(ep,8,1)+vqn(ep,8,4)
744 vnrm(ep,3,3)=vqn(ep,9,1)+vqn(ep,9,4)
745 c1=sqrt(vnrm(ep,1,3)*vnrm(ep,1,3)+vnrm(ep,2,3)*vnrm(ep,2,3)+vnrm(ep,3,3)*vnrm(ep,3,3))
747 vnrm(ep,1,3)=vnrm(ep,1,3)/c1
748 vnrm(ep,2,3)=vnrm(ep,2,3)/c1
749 vnrm(ep,3,3)=vnrm(ep,3,3)/c1
750 vastn(ep,1,3)=-(x41*vqn(ep,4,1)+y41*vqn(ep,5,1)+z41*vqn(ep,6,1))
751 vastn(ep,2,3)= x41*vqn(ep,1,1)+y41*vqn(ep,2,1)+z41*vqn(ep,3,1)
752 vastn(ep,3,3)=-(x41*vqn(ep,4,4)+y41*vqn(ep,5,4)+z41*vqn(ep,6,4))
753 vastn(ep,4,3)= x41*vqn(ep,1,4)+y41*vqn(ep,2,4)+z41*vqn(ep,3,4)
755 vnrm(ep,1,4)=vqn(ep,7,2)+vqn(ep,7,3)
756 vnrm(ep,2,4)=vqn(ep,8,2)+vqn(ep,8,3)
757 vnrm(ep,3,4)=vqn(ep,9,2)+vqn(ep,9,3)
758 c1=sqrt(vnrm(ep,1,4)*vnrm(ep,1,4)+vnrm(ep,2,4)*vnrm(ep,2,4)+vnrm(ep,3,4)*vnrm(ep,3,4))
760 vnrm(ep,1,4)=vnrm(ep,1,4)/c1
761 vnrm(ep,2,4)=vnrm(ep,2,4)/c1
762 vnrm(ep,3,4)=vnrm(ep,3,4)/c1
763 vastn(ep,1,4)=-(x32*vqn(ep,4,2)+y32*vqn(ep,5,2)+z32*vqn(ep,6,2))
764 vastn(ep,2,4)= x32*vqn(ep,1,2)+y32*vqn(ep,2,2)+z32*vqn(ep,3,2)
765 vastn(ep,3,4)=-(x32*vqn(ep,4,3)+y32*vqn(ep,5,3)+z32*vqn(ep,6,3))
766 vastn(ep,4,4)= x32*vqn(ep,1,3)+y32*vqn(ep,2,3)+z32*vqn(ep,3,3)
784 vqg(ep,7,3)=-vqg(ep,7,1)
785 vqg(ep,8,3)=-vqg(ep,8,1)
786 vqg(ep,7,1)= vqg(ep,7,1)*sl
787 vqg(ep,8,1)= vqg(ep,8,1)*sl
791 c1 = sqrt(g1x1*g1x1 + g1y1*g1y1 +j2myz )
794 c2 = sqrt(g2x1*g2x1 + g2y1*g2y1 +j2myz)
795 vjfi(ep,1,1)=(g2y1*vqg(ep,9,1)+jmz13*vqg(ep,8,1))
796 vjfi(ep,2,1)=(-jmz13*vqg(ep,7,1)-g2x1*vqg(ep,9,1))
797 vjfi(ep,3,1)=(g2x1*vqg(ep,8,1)-g2y1*vqg(ep,7,1))
798 vqg(ep,1,1)= g1x1*c2+vjfi(ep,1,1)*c1
799 vqg(ep,2,1)= g1y1*c2+vjfi(ep,2,1)*c1
800 vqg(ep,3,1)= -jmz13*c2+vjfi(ep,3,1)*c1
802 vjfi(ep,1,1)=vjfi(ep,1,1)*sl
803 vjfi(ep,2,1)=vjfi(ep,2,1)*sl
804 vjfi(ep,3,1)=vjfi(ep,3,1)*sl
806 vjfi(ep,4,1)=(-jmz13*vqg(ep,8,1)-g1y1*vqg(ep,9,1))*sl
807 vjfi(ep,5,1)=(g1x1*vqg(ep,9,1)+jmz13*vqg(ep,7,1))*sl
808 vjfi(ep,6,1)=(g1y1*vqg(ep,7,1)-g1x1*vqg(ep,8,1))*sl
810 sl = sqrt(vqg(ep,1,1)*vqg(ep,1,1) + vqg(ep,2,1)*vqg(ep,2,1) + vqg(ep,3,1)*vqg(ep,3,1))
811 IF ( sl/=zero) sl = one / sl
812 vqg(ep,1,1) = vqg(ep,1,1)*sl
813 vqg(ep,2,1) = vqg(ep,2,1)*sl
814 vqg(ep,3,1) = vqg(ep,3,1)*sl
816 vqg(ep,4,1)= vqg(ep,8,1)*vqg(ep,3,1)-vqg(ep,9,1)*vqg(ep,2,1)
817 vqg(ep,5,1)= vqg(ep,9,1)*vqg(ep,1,1)-vqg(ep,7,1)*vqg(ep,3,1)
818 vqg(ep,6,1)= vqg(ep,7,1)*vqg(ep,2,1)-vqg(ep,8,1)*vqg(ep,1,1)
824 vqg(ep,7,3)= vqg(ep,7,3)*sl
825 vqg(ep,8,3)= vqg(ep,8,3)*sl
830 j1 = sqrt(g1x3*g1x3 + g1y3*g1y3 +j2myz )
834 j2 = sqrt(g2x2*g2x2 + g2y2*g2y2 +j2myz)
835 vjfi(ep,1,3)=(g2y2*vqg(ep,9,3)-jmz13*vqg(ep,8,3))
836 vjfi(ep,2,3)=(jmz13*vqg(ep,7,3)-g2x2*vqg(ep,9,3))
837 vjfi(ep,3,3)=(g2x2*vqg(ep,8,3)-g2y2*vqg(ep,7,3))
838 vqg(ep,1,3)= g1x3*j2+vjfi(ep,1,3)*j1
839 vqg(ep,2,3)= g1y3*j2+vjfi(ep,2,3)*j1
840 vqg(ep,3,3)= jmz13*j2+vjfi(ep,3,3)*j1
842 vjfi(ep,1,3)=vjfi(ep,1,3)*sl
843 vjfi(ep,2,3)=vjfi(ep,2,3)*sl
844 vjfi(ep,3,3)=vjfi(ep,3,3)*sl
846 vjfi(ep,4,3)=(jmz13*vqg(ep,8,3)-g1y3*vqg(ep,9,3))*sl
847 vjfi(ep,5,3)=(g1x3*vqg(ep
848 vjfi(ep,6,3)=(g1y3*vqg(ep,7,3)-g1x3*vqg(ep,8,3))*sl
850 sl = sqrt(vqg(ep,1,3)*vqg(ep,1,3) + vqg(ep,2,3)*vqg(ep,2,3) + vqg(ep,3,3)*vqg(ep,3,3))
851 IF ( sl/=zero) sl = one / sl
852 vqg(ep,1,3) = vqg(ep,1,3)*sl
853 vqg(ep,2,3) = vqg(ep,2,3)*sl
856 vqg(ep,4,3)= vqg(ep,8,3)*vqg(ep,3,3)-vqg(ep,9,3)*vqg(ep,2,3)
857 vqg(ep,5,3)= vqg(ep,9,3)*vqg(ep,1,3)-vqg(ep,7,3)*vqg(ep,3,3)
858 vqg(ep,6,3)= vqg(ep,7,3)*vqg(ep,2,3)-vqg(ep,8,3)*vqg(ep,1,3)
868 vqg(ep,7,4)=-vqg(ep,7,2)
869 vqg(ep,8,4)=-vqg(ep,8,2)
870 vqg(ep,7,2)= vqg(ep,7,2)*sl
871 vqg(ep,8,2)= vqg(ep,8,2)*sl
873 vjfi(ep,1,2)=(g2y2*vqg(ep,9,2)-jmz13*vqg(ep,8,2))
874 vjfi(ep,2,2)=(jmz13*vqg(ep,7,2)-g2x2*vqg(ep,9,2))
875 vjfi(ep,3,2)=(g2x2*vqg(ep,8,2)-g2y2*vqg(ep,7,2))
876 vqg(ep,1,2)= g1x1*j2+vjfi(ep,1,2)*c1
877 vqg(ep,2,2)= g1y1*j2+vjfi(ep,2,2)*c1
878 vqg(ep,3,2)=-jmz13*j2+vjfi(ep,3,2)*c1
880 vjfi(ep,1,2)=vjfi(ep,1,2)*sl
881 vjfi(ep,2,2)=vjfi(ep,2,2)*sl
882 vjfi(ep,3,2)=vjfi(ep,3,2)*sl
884 vjfi(ep,4,2)=(-jmz13*vqg(ep,8,2)-g1y1*vqg(ep,9,2))*sl
885 vjfi(ep,5,2)=(g1x1*vqg(ep,9,2)+jmz13*vqg(ep,7,2))*sl
886 vjfi(ep,6,2)=(g1y1*vqg(ep,7,2)-g1x1*vqg(ep,8,2))*sl
888 sl = sqrt(vqg(ep,1,2)*vqg(ep,1,2) + vqg(ep,2,2)*vqg(ep,2,2) + vqg(ep,3,2)*vqg(ep,3,2))
889 IF ( sl/=zero) sl = one / sl
890 vqg(ep,1,2) = vqg(ep,1,2)*sl
891 vqg(ep,2,2) = vqg(ep,2,2)*sl
892 vqg(ep,3,2) = vqg(ep,3,2)*sl
893 vqg(ep,4,2)= vqg(ep,8,2)*vqg(ep,3,2)-vqg(ep,9,2)*vqg(ep,2,2)
894 vqg(ep,5,2)= vqg(ep,9,2)*vqg(ep,1,2)-vqg(ep,7,2)*vqg(ep,3,2)
895 vqg(ep,6,2)= vqg(ep,7,2)*vqg(ep,2,2)-vqg(ep,8,2)*vqg(ep,1,2)
901 vqg(ep,7,4)= vqg(ep,7,4)*sl
902 vqg(ep,8,4)= vqg(ep,8,4)*sl
905 vjfi(ep,1,4)=(g2y1*vqg(ep,9,4)+jmz13*vqg(ep,8,4))
906 vjfi(ep,2,4)=(-jmz13*vqg(ep,7,4)-g2x1*vqg(ep,9,4))
907 vjfi(ep,3,4)=(g2x1*vqg(ep,8,4)-g2y1*vqg(ep,7,4))
908 vqg(ep,1,4)= g1x3*c2+vjfi(ep,1,4)*j1
909 vqg(ep,2,4)= g1y3*c2+vjfi(ep,2,4)*j1
910 vqg(ep,3,4)=jmz13*c2+vjfi(ep,3,4)*j1
912 vjfi(ep,1,4)=vjfi(ep,1,4)*sl
913 vjfi(ep,2,4)=vjfi(ep,2,4)*sl
914 vjfi(ep,3,4)=vjfi(ep,3,4)*sl
916 vjfi(ep,4,4)=(jmz13*vqg(ep,8,4)-g1y3*vqg(ep,9,4))*sl
917 vjfi(ep,5,4)=(g1x3*vqg(ep,9,4)-jmz13*vqg(ep,7,4))*sl
918 vjfi(ep,6,4)=(g1y3*vqg(ep,7,4)-g1x3*vqg(ep,8,4))*sl
920 sl = sqrt(vqg(ep,1,4)*vqg(ep,1,4) + vqg(ep,2,4)*vqg(ep,2,4) + vqg(ep,3,4)*vqg(ep,3,4))
921 IF ( sl/=zero) sl = one / sl
922 vqg(ep,1,4) = vqg(ep,1,4)*sl
923 vqg(ep,2,4) = vqg(ep,2,4)*sl
924 vqg(ep,3,4) = vqg(ep,3,4)*sl
925 vqg(ep,4,4)= vqg(ep,8,4)*vqg(ep,3,4)-vqg(ep,9,4)*vqg(ep,2,4)
926 vqg(ep,5,4)= vqg(ep,9,4)*vqg(ep,1,4)-vqg(ep,7,4)*vqg(ep,3,4)
927 vqg(ep,6,4)= vqg(ep,7,4)*vqg(ep,2,4)-vqg(ep,8,4)*vqg(ep,1,4)
928 area(ep)=jac(ep,1)+jac(ep,2)+jac(ep,3)+jac(ep,4)
932#include "vectorize.inc"
940 rlz(i,1) =(vq(ep,1,3)*vr(1,nn(1))+vq(ep,2,3)*vr(2,nn(1)) +vq(ep,3,3)*vr(3,nn(1)))
941 rlz(i,2) =(vq(ep,1,3)*vr(1,nn(2))+vq(ep,2,3)*vr(2,nn(2)) +vq(ep,3,3)*vr(3,nn(2)))
942 rlz(i,3) =(vq(ep,1,3)*vr(1,nn(3))+vq(ep,2,3)*vr(2,nn(3)) +vq(ep,3,3)*vr(3,nn(3)))
943 rlz(i,4) =(vq(ep,1,3)*vr(1,nn(4))+vq(ep,2,3)*vr(2,nn(4)) +vq(ep,3,3)*vr(3,nn(4)))
951 corel(1,1)=vcore(ep,1,1)
952 corel(1,2)=vcore(ep,1,2)
953 corel(1,3)=vcore(ep,1,3)
954 corel(1,4)=vcore(ep,1,4)
955 corel(2,1)=vcore(ep,2,1)
956 corel(2,2)=vcore(ep,2,2)
957 corel(2,3)=vcore(ep,2,3)
958 corel(2,4)=vcore(ep,2,4)
963 x13 =(vcore(ep,1,1)-vcore
964 x24 =(vcore(ep,1,2)-vcore(ep,1,4))*half
965 y13 =(vcore(ep,2,1)-vcore(ep,2,3))*half
966 y24 =(vcore(ep,2,2)-vcore(ep,2,4))*half
967 mx13=(vcore(ep,1,1)+vcore(ep,1,3))*half
968 my13=(vcore(ep,2,1)+vcore(ep,2,3))*half
973 rr(1,1) =vq(ep,1,1)*vr(1,nn(1))+vq(ep,2,1)*vr(2,nn(1))+vq(ep,3,1)*vr(3,nn(1))
974 rr(1,2) =vq(ep,1,1)*vr(1,nn(2))+vq(ep,2,1)*vr(2,nn(2))+vq(ep,3,1)*vr(3,nn(2))
975 rr(1,3) =vq(ep,1,1)*vr(1,nn(3))+vq(ep,2,1)*vr(2,nn(3))+vq(ep,3,1)*vr(3,nn(3))
976 rr(1,4) =vq(ep,1,1)*vr(1,nn(4))+vq(ep,2,1)*vr(2,nn(4))+vq(ep,
977 rr(2,1) =vq(ep,1,2)*vr(1,nn(1))+vq(ep,2,2)*vr(2,nn(1))+vq(ep,3,2)*vr(3,nn(1))
978 rr(2,2) =vq(ep,1,2)*vr(1,nn(2))+vq(ep,2,2)*vr(2,nn(2))+vq(ep,3,2)*vr(3,nn(2))
979 rr(2,3) =vq(ep,1,2)*vr(1,nn(3))+vq(ep,2,2)*vr(2,nn(3))+vq(ep,3,2)*vr(3,nn(3))
980 rr(2,4) =vq(ep,1,2)*vr(1,nn(4))+vq(ep,2,2)*vr(2,nn(4))+vq(ep,3,2)*vr(3,nn(4))
981 rr(3,1) =vq(ep,1,3)*vr(1,nn(1))+vq(ep,2,3)*vr(2,nn(1))+vq(ep,3,3)*vr(3,nn(1))
982 rr(3,2) =vq(ep,1,3)*vr(1,nn(2))+vq(ep,2,3)*vr(2,nn(2))+vq(ep,3,3)*vr(3,nn(2))
983 rr(3,3) =vq(ep,1,3)*vr(1,nn(3))+vq(ep,2,3)*vr(2,nn(3))+vq(ep,3,3)*vr(3,nn(3))
984 rr(3,4) =vq(ep,1,3)*vr(1,nn(4))+vq(ep,2,3)*vr(2,nn(4))+vq(ep,3,3)*vr
986 ar(1)=-z1*vhi(ep,2)+y13*v13(ep,3)+y24*v24(ep,3)+my13*vhi(ep,3)+rr(1,1)+rr(1,2)+rr(1,3)+rr(1,4)
987 ar(2)= z1*vhi(ep,1)-x13*v13(ep,3)-x24*v24(ep,3)-mx13*vhi(ep,3)+rr(2,1)+rr(2,2)+rr(2,3)+rr(2,4)
988 ar(3)= x13*v13(ep,2)+x24*v24(ep,2)+mx13*vhi(ep,2)-y13*v13(ep,1)-y24*v24(ep,1
990 xx1 = corel(1,1)*corel(1,1)+corel(1,2)*corel(1,2)+corel(1,3)*corel(1,3)+corel(1,4)*corel(1,4)
991 yy = corel(2,1)*corel(2,1)+corel(2,2)*corel(2,2)+corel(2,3)*corel(2,3)
992 xy = corel(1,1)*corel(2,1)+corel(1,2)*corel(2,2)+corel(1,3)*corel(2,3)+corel(1,4)*corel(2,4)
994 yz = (corel(2,1)-corel(2,2)+corel(2,3)-corel(2,4))*z1
1003 abc = d(1)*d(2)*d(3)
1004 xxyz2 = d(1)*d(6)*d(6)
1005 yyxz2 = d(2)*d(5)*d(5)
1006 zzxy2 = d(3)*d(4)*d(4)
1007 deta = abc+2*d(4)*d(5)*d(6)-xxyz2-yyxz2-zzxy2
1013 di(ep,1) = (abc-xxyz2)*deta/d(1)
1014 di(ep,2) = (abc-yyxz2)*deta/d(2)
1015 di(ep,3) = (abc-zzxy2)*deta/d(3)
1016 di(ep,4) = (d(5)*d(6)-d(4)*d(3))*deta
1017 di(ep,5) = (d(6)*d(4)-d(5)*d(2))*deta
1018 di(ep,6) = (d(4)*d(5)-d(6)*d(1))*deta
1020 alr(1) =di(ep,1)*ar(1)+di(ep,4)*ar(2)+di(ep,5)*ar(3)
1021 alr(2) =di(ep,4)*ar(1)+di(ep,2)*ar(2)+di(ep,6)*ar(3)
1022 alr(3) =di(ep,5)*ar(1)+di(ep,6)*ar(2)+di(ep,3)*ar(3)
1023 v13(ep,1)= half*v13(ep,1)+alr(3)*y13
1024 v24(ep,1)= half*v24(ep,1)+alr(3)*y24
1025 vhi(ep,1)= fourth*vhi(ep,1)+(alr(3)*my13-z1*alr(2))
1026 v13(ep,2)= half*v13(ep,2)-alr(3)*x13
1027 v24(ep,2)= half*v24(ep,2)-alr(3)*x24
1028 vhi(ep,2)= fourth*vhi(ep,2)-(alr(3)*mx13-z1*alr(1))
1029 v13(ep,3)= half*v13(ep,3)-(y13*alr(1)-x13*alr(2))
1030 v24(ep,3)= half*v24(ep,3)-(y24*alr(1)-x24*alr(2))
1031 vhi(ep,3)= fourth*vhi(ep,3)+(mx13*alr(2)-my13*alr(1))
1033 vxyz(ep,1,1)= v13(ep,1)+vhi(ep,1)
1034 vxyz(ep,1,2)= v24(ep,1)-vhi(ep,1)
1035 vxyz(ep,1,3)= -v13(ep,1)+vhi(ep,1)
1036 vxyz(ep,1,4)= -v24(ep,1)-vhi(ep,1)
1038 vxyz(ep,2,1)= v13(ep,2)+vhi(ep,2)
1039 vxyz(ep,2,2)= v24(ep,2)-vhi(ep,2)
1040 vxyz(ep,2,3)= -v13(ep,2)+vhi(ep,2)
1041 vxyz(ep,2,4)= -v24(ep,2)-vhi(ep,2)
1043 vxyz(ep,3,1)= v13(ep,3)+vhi(ep,3)
1044 vxyz(ep,3,2)= v24(ep,3)-vhi(ep,3)
1045 vxyz(ep,3,3)= -v13(ep,3)+vhi(ep,3)
1046 vxyz(ep,3,4)= -v24(ep,3)-vhi(ep,3)
1048 rr(1,1)= rr(1,1)-alr(1)
1049 rr(1,2)= rr(1,2)-alr(1)
1050 rr(1,3)= rr(1,3)-alr(1)
1051 rr(1,4)= rr(1,4)-alr(1)
1053 rr(2,1)= rr(2,1)-alr(2)
1054 rr(2,2)= rr(2,2)-alr(2)
1055 rr(2,3)= rr(2,3)-alr(2)
1056 rr(2,4)= rr(2,4)-alr(2)
1058 rr(3,1)= rr(3,1)-alr(3)
1059 rr(3,2)= rr(3,2)-alr(3)
1060 rr(3,3)= rr(3,3)-alr(3)
1061 rr(3,4)= rr(3,4)-alr(3)
1062 rxyz(ep,1,1)=vqn(ep,1,1)*rr(1,1)+vqn(ep,2,1)*rr(2,1)+vqn(ep,3,1)*rr(3,1)
1063 rxyz(ep,2,1)=vqn(ep,4,1)*rr(1,1)+vqn(ep,5,1)*rr(2,1)+vqn(ep,6,1)*rr(3,1)
1064 rxyz(ep,1,2)=vqn(ep,1,2)*rr(1,2)+vqn(ep,2,2)*rr(2,2)+vqn(ep,3,2)*rr(3,2)
1065 rxyz(ep,2,2)=vqn(ep,4,2)*rr(1,2)+vqn(ep,5,2)*rr(2,2)+vqn(ep,6,2)*rr(3,2)
1066 rxyz(ep,1,3)=vqn(ep,1,3)*rr(1,3)+vqn(ep,2,3)*rr(2,3)+vqn(ep,3,3)*rr(3,3)
1067 rxyz(ep,2,3)=vqn(ep,4,3)*rr(1,3)+vqn(ep,5,3)*rr(2,3)+vqn(ep,6,3)*rr(3,3)
1068 rxyz(ep,1,4)=vqn(ep,1,4)*rr(1,4)+vqn(ep,2,4)*rr(2,4)+vqn(ep,3,4)*rr(3,4)
1069 rxyz(ep,2,4)=vqn(ep,4,4)*rr(1,4)+vqn(ep,5,4)*rr(2,4)+vqn(ep,6,4)*rr(3,4)
1072 rlz(i,1)=(vqn(ep,7,1)*rr(1,1)+vqn(ep,8,1)*rr(2,1)+vqn(ep,9,1)*rr(3,1))
1073 rlz(i,2)=(vqn(ep,7,2)*rr(1,2)+vqn(ep,8,2)*rr(2,2)+vqn(ep,9,2)*rr(3,2))
1074 rlz(i,3)=(vqn(ep,7,3)*rr(1,3)+vqn(ep,8,3)*rr(2,3)+vqn(ep,9,3)*rr(3,3))
1075 rlz(i,4)=(vqn(ep,7,4)*rr(1,4)+vqn(ep,8,4)*rr(2,4)+vqn(ep,9,4)*rr(3,4))
1083 rx(i)=xl2(i)+xl3(i)-xl4(i)
1084 ry(i)=yl2(i)+yl3(i)-yl4(i)
1085 sx(i)=-xl2(i)+xl3(i)+xl4(i)
1086 sy(i)=-yl2(i)+yl3(i)+yl4(i)
1087 c1=sqrt(rx(i)*rx(i)+ry(i)*ry(i))
1088 c2=sqrt(sx(i)*sx(i)+sy(i)*sy(i))
1089 s1=fourth*(
max(c1,c2)/
min(c1,c2)-one)
1090 fac1=
min(half,s1)+one
1091 fac2=four*
area(i)/(c1*c2)
1092 fac2=3.413*
max(zero,fac2-0.7071)
1093 fac2=0.78+0.22*fac2*fac2*fac2
1096 facn(i,1)=sqrt(l24(i)/ll(i))
1097 facn(i,2)=sqrt(l13(i)/ll(i))
1098 s1 = sqrt(faci*(four_over_3+lm(i)*area_i(i))*ll(i))
1106 off(ep) =
min(one,abs(offg(ep)))
1107 off_l =
min(off_l,offg(ep))
1112 IF(offg(ep)<zero)
THEN
1137 IF(anim_ply > 0)
THEN
1138#include "lockon.inc"
1140 i1 = inod(ixc(2,ep))
1141 i2 = inod(ixc(3,ep))
1142 i3 = inod(ixc(4,ep))
1143 i4 = inod(ixc(5,ep))
1145 vn_nod(1,i1) = vn_nod(1,i1)+vq(ep,1,3)
1146 vn_nod(2,i1) = vn_nod(2,i1)+vq(ep,2,3)
1147 vn_nod(3,i1) = vn_nod(3,i1)+vq(ep,3,3)
1149 vn_nod(1,i2) =vn_nod(1,i2)+vq(ep,1,3)
1150 vn_nod(2,i2) =vn_nod(2,i2)+vq(ep,2,3)
1151 vn_nod(3,i2) =vn_nod(3,i2)+vq(ep,3,3)
1154 vn_nod(2,i3) =vn_nod(2,i3)+vq(ep,2,3)
1155 vn_nod(3,i3) =vn_nod(3,i3)+vq(ep,3,3)
1158 vn_nod(1,i4) =vn_nod(1,i4)+vq(ep,1,3)
1159 vn_nod(2,i4) =vn_nod(2,i4)+vq(ep,2,3)
1160 vn_nod(3,i4) =vn_nod(3,i4)+vq(ep,3,3)
1162#include "lockoff.inc"
1178 . VR,DR,IXC,PM,OFFG,AREA,
1179 1 VXYZ, RLZ,VCORE,JAC,HX,
1180 2 HY,VQ,VQG,VJFI,NPLAT,IPLAT,
1181 3 X13_T ,X24_T ,Y13_T,Y24_T,NPT ,
1182 4 SMSTR , ISROT ,XLCOR,ZL ,VQN,NEL)
1187 use element_mod ,
only : nixc
1191#include "implicit_f.inc"
1192#include "comlock.inc"
1196#include "mvsiz_p.inc"
1197#include "param_c.inc"
1201 INTEGER JFT,JLT,NNOD,NPLAT,NPT,ISROT,NEL
1202 INTEGER IXC(NIXC,*),IPLAT(*)
1205 . x(3,*), v(3,*), vr(3,*),pm(npropm,*),offg(*),
1206 . vcore(mvsiz,3,nnod),vxyz(mvsiz,3,nnod),
area(*),vjfi(mvsiz,6,4),
1207 . vq(mvsiz,3,3),vqg(mvsiz,9,nnod),rlz(mvsiz,nnod),
1208 . jac(mvsiz,4),hx(mvsiz,4),hy(mvsiz,4),y24_t(*),dr(3,*),
1209 . x13_t(*),x24_t(*),y13_t(*),xlcor(mvsiz,2,nnod-1),zl(*),vqn(mvsiz,9,nnod)
1212 TYPE(elbuf_struct_) :: ELBUF_STR
1247 INTEGER I,II(9),K,EP,SPLAT
1248 INTEGER NN(4),JPLAT(MVSIZ),IFPROJ
1250 . XX2,XX3,XX4,YY1,YY2,YY3,YY4,ZZ1,ZZ2,ZZ3,ZZ4
1252 . C1,C2,L13(MVSIZ),L24(MVSIZ),
1255 . TOL,PG,J0,J1,J2,COREL(3,4),X1,Y1,LL(MVSIZ)
1257 . X13,X24,Y13,MX13,MX23,MX34,MY13,Z1,Z2,GAMA1,GAMA2,
1258 . X21,X34,Y21,Y34,Z21,Z34,X41,X32,Y41,Y32,Z41,Z32,L12,L34,
1259 . A_4,SL,SZ2,SZ,JMX13,JMY13,JMZ13,J2MYZ,Y24,
1260 . MY23,MY34,G1X1,G1X3,G1Y1,G1Y3,G2X1,G2X2,G2Y1,G2Y2,
1261 . XX1,YY,ZZ,XY,XZ1,YZ,
1264 . lxyz0(3),deta1(mvsiz),
1265 . xl2(mvsiz),xl3(mvsiz),xl4(mvsiz),yl2(mvsiz),
1266 . yl3(mvsiz),yl4(mvsiz),xx,area_i(mvsiz),
1267 . x0g2(mvsiz),x0g3(mvsiz),x0g4(mvsiz),y0g2(mvsiz),
1268 . y0g3(mvsiz),y0g4(mvsiz),z0g2(mvsiz),z0g3(mvsiz),z0g4(mvsiz)
1271 . vg24(3),vghi(3),v13(mvsiz,3),v24(mvsiz,3),vhi(mvsiz,3),
1274 . vnx1, vny1, vnz1,vnx2,vny2,vnz2,vnx3,vny3,vnz3,vnx4,vny4,vnz4,
1275 .
norm,zl1(mvsiz),ssz(mvsiz),
1276 . rx(mvsiz),ry(mvsiz),rz(mvsiz),sx(mvsiz),sy(mvsiz),
1277 . r11(mvsiz),r12(mvsiz),r13(mvsiz),r21(mvsiz),r22(mvsiz),
1278 . r23(mvsiz),r31(mvsiz),r32(mvsiz),r33(mvsiz),dirz(mvsiz,2),
1279 . x0l2(mvsiz),x0l3(mvsiz),x0l4(mvsiz),y0l2(mvsiz),
1280 . y0l3(mvsiz),y0l4(mvsiz),vq0(mvsiz,3,3)
1283 . axyz(mvsiz,3,nnod)
1284 DATA pg/.577350269189626/
1291 IF (isrot > 0 ) tol=em8
1293 IF(abs(offg(i))==one)offg(i)=sign(two,offg(i))
1294 axyz(i,1:3,1:4)= zero
1296 IF (isrot > 0 )
THEN
1301 axyz(i,1,1) = dr(1,nn(1))
1302 axyz(i,2,1) = dr(2,nn(1))
1303 axyz(i,3,1) = dr(3,nn(1))
1304 axyz(i,1,2) = dr(1,nn(2))
1305 axyz(i,2,2) = dr(2,nn(2))
1306 axyz(i,3,2) = dr(3,nn(2))
1307 axyz(i,1,3) = dr(1,nn(3))
1308 axyz(i,2,3) = dr(2,nn(3))
1309 axyz(i,3,3) = dr(3,nn(3))
1310 axyz(i,1,4) = dr(1,nn(4))
1311 axyz(i,2,4) = dr(2,nn(4))
1312 axyz(i,3,4) = dr(3,nn(4))
1315 x0g2(i) = smstr(ii(1)+i)
1316 y0g2(i) = smstr(ii(2)+i)
1317 z0g2(i) = smstr(ii(3)+i)
1318 x0g3(i) = smstr(ii(4)+i)
1319 y0g3(i) = smstr(ii(5)+i)
1320 z0g3(i) = smstr(ii(6)+i)
1321 x0g4(i) = smstr(ii(7)+i)
1322 y0g4(i) = smstr(ii(8)+i)
1323 z0g4(i) = smstr(ii(9)+i)
1332 rx(i)=x0g2(i)+x0g3(i)-x0g4(i)
1333 sx(i)=x0g3(i)+x0g4(i)-x0g2(i)
1334 ry(i)=y0g2(i)+y0g3(i)-y0g4(i)
1335 sy(i)=y0g3(i)+y0g4(i)-y0g2(i)
1336 rz(i)=z0g2(i)+z0g3(i)-z0g4(i)
1337 ssz(i)=z0g3(i)+z0g4(i)-z0g2(i)
1346 . r11,r12,r13,r21,r22,r23,r31,r32,r33,deta1,offg )
1348 area(i)=fourth*deta1(i)
1349 area_i(i)=one/
area(i)
1361 lxyz0(1)=fourth*(x0g2(i)+x0g3(i)+x0g4(i))
1362 lxyz0(2)=fourth*(y0g2(i)+y0g3(i)+y0g4(i))
1363 lxyz0(3)=fourth*(z0g2(i)+z0g3(i)+z0g4(i))
1364 zl1(i)=-(vq0(i,1,3)*lxyz0(1)+vq0(i,2,3)*lxyz0(2)+vq0(i,3,3)*lxyz0(3))
1370 vr1_12=vq0(i,1,1)*vq(i,1,2)+vq0(i,2,1)*vq(i,2,2)+vq0(i,3,1)*vq(i,3,2)
1371 vr1_21=vq0(i,1,2)*vq(i,1,1)+vq0(i,2,2)*vq(i,2,1)+vq0(i,3,1)*vq(i,3,2)
1372 dirz(i,2) = half*(vr1_12-vr1_21)
1373 norm = one-dirz(i,2)*dirz(i,2)
1374 dirz(i,1) = sqrt(
max(zero,
norm))
1377 x0l2(i)=vq0(i,1,1)*x0g2(i)+vq0(i,2,1)*y0g2(i)+vq0(i,3,1)*z0g2(i)
1378 y0l2(i)=vq0(i,1,2)*x0g2(i)+vq0(i,2,2)*y0g2(i)+vq0(i,3,2)*z0g2(i)
1379 x0l3(i)=vq0(i,1,1)*x0g3(i)+vq0(i,2,1)*y0g3(i)+vq0(i,3,1)*z0g3(i)
1380 y0l3(i)=vq0(i,1,2)*x0g3(i)+vq0(i,2,2)*y0g3(i)+vq0(i,3,2)*z0g3(i)
1381 x0l4(i)=vq0(i,1,1)*x0g4(i)+vq0(i,2,1)*y0g4(i)+vq0(i,3,1)*z0g4(i)
1382 y0l4(i)=vq0(i,1,2)*x0g4(i)+vq0(i,2,2)*y0g4(i)+vq0(i,3,2)*z0g4(i)
1388 xl2(i)= x0l2(i)*dirz(i,1)-y0l2(i)*dirz(i,2)
1389 yl2(i)= x0l2(i)*dirz(i,2)+y0l2(i)*dirz(i,1)
1390 xl3(i)= x0l3(i)*dirz(i,1)-y0l3(i)*dirz(i,2)
1391 yl3(i)= x0l3(i)*dirz(i,2)+y0l3(i)*dirz(i,1)
1392 xl4(i)= x0l4(i)*dirz(i,1)-y0l4(i)*dirz(i,2)
1393 yl4(i)= x0l4(i)*dirz(i,2)+y0l4(i)*dirz(i,1)
1411 v13(i,1)=-xl3(i)-(-x0l3(i))
1412 v24(i,1)=xl2(i)-xl4(i)-(x0l2(i)-x0l4(i))
1413 vhi(i,1)=-xl2(i)+xl3(i)-xl4(i)-(-x0l2(i)+x0l3(i)-x0l4(i))
1414 v13(i,2)=-yl3(i)-(-y0l3(i))
1415 v24(i,2)=yl2(i)-yl4(i)-(y0l2(i)-y0l4(i))
1416 vhi(i,2)=-yl2(i)+yl3(i)-yl4(i)-(-y0l2(i)+y0l3(i)-y0l4(i))
1419 vhi(i,3)=four*(zl(i)-zl1(i))
1432 lxyz0(1)=fourth*(xl2(ep)+xl3(ep)+xl4(ep))
1433 lxyz0(2)=fourth*(yl2(ep)+yl3(ep)+yl4(ep))
1434 vcore(ep,1,1)=-lxyz0(1)
1435 vcore(ep,1,2)=xl2(ep)-lxyz0(1)
1436 vcore(ep,1,3)=xl3(ep)-lxyz0(1)
1437 vcore(ep,1,4)=xl4(ep)-lxyz0(1)
1438 vcore(ep,2,1)=-lxyz0(2)
1439 vcore(ep,2,2)=yl2(ep)-lxyz0(2)
1440 vcore(ep,2,3)=yl3(ep)-lxyz0(2)
1441 vcore(ep,2,4)=yl4(ep)-lxyz0(2)
1443 x13_t(ep) =(vcore(ep,1,1)-vcore(ep,1,3))*half
1444 x24_t(ep) =(vcore(ep,1,2)-vcore(ep,1,4))*half
1445 y13_t(ep) =(vcore(ep,2,1)-vcore(ep,2,3))*half
1446 y24_t(ep) =(vcore(ep,2,2)-vcore(ep,2,4))*half
1447 l13(ep)=x13_t(ep)*x13_t(ep)+y13_t(ep)*y13_t(ep)
1448 l24(ep)=x24_t(ep)*x24_t(ep)+y24_t(ep)*y24_t(ep)
1449 ll(ep)=
max(l13(ep),l24(ep))
1456 IF (z2<tol*ll(ep).OR.npt==1)
THEN
1465 iplat(ep)=jplat(ep-nplat)
1467#include "vectorize.inc"
1475 mx13=(vcore(ep,1,1)+vcore(ep,1,3))*half
1476 my13=(vcore(ep,2,1)+vcore(ep,2,3))*half
1477 mx23=(vcore(ep,1,2)+vcore(ep,1,3))*half
1478 mx34=(vcore(ep,1,3)+vcore(ep,1,4))*half
1479 my23=(vcore(ep,2,2)+vcore(ep,2,3))*half
1480 my34=(vcore(ep,2,3)+vcore(ep,2,4))*half
1481 x13_t(ep) =x13*area_i(ep)
1482 x24_t(ep) =x24*area_i(ep)
1483 y13_t(ep) =y13*area_i(ep)
1484 y24_t(ep) =y24*area_i(ep)
1486 gama1=-mx13*y24+my13*x24
1487 gama2= mx13*y13-my13*x13
1490 vxyz(ep,1,1)=v13(ep,1)
1491 vxyz(ep,2,1)=v13(ep,2)
1492 vxyz(ep,3,1)=v13(ep,3)
1494 vxyz(ep,1,2)=v24(ep,1)
1495 vxyz(ep,2,2)=v24(ep,2)
1496 vxyz(ep,3,2)=v24(ep,3)
1498 vxyz(ep,1,3)=vhi(ep,1)
1499 vxyz(ep,2,3)=vhi(ep,2)
1500 vxyz(ep,3,3)=vhi(ep,3)
1503 vcore(ep,1,1)=y24_t(ep)
1504 vcore(ep,2,1)=-y13_t(ep)
1505 vcore(ep,3,1)=-x24_t(ep)
1506 vcore(ep,1,2)= x13_t(ep)
1507 vcore(ep,2,2)=gama1*area_i(ep)
1508 vcore(ep,3,2)=gama2*area_i(ep)
1516 j1=(mx23*my13-mx13*my23)*pg
1517 j2=-(mx13*my34-mx34*my13)*pg
1520 jac(ep,1)=abs(j0+j2-j1)
1521 jac(ep,2)=abs(j0+j2+j1)
1522 jac(ep,3)=abs(j0-j2+j1)
1523 jac(ep,4)=abs(j0-j2-j1)
1526 hx(ep,1)=j1/jac(ep,1)
1527 hx(ep,2)=j2/jac(ep,2)
1528 hx(ep,3)=-j1/jac(ep,3)
1529 hx(ep,4)=-j2/jac(ep,4)
1532 hy(ep,1)=j1/jac(ep,1)
1533 hy(ep,2)=j2/jac(ep,2)
1534 hy(ep,3)=-j1/jac(ep,3)
1535 hy(ep,4)=-j2/jac(ep,4)
1539#include "vectorize.inc"
1543 rlz(ep,1) =vq(ep,1,3)*axyz(ep,1,1)+vq(ep,2,3)*axyz(ep,2,1)+vq(ep,3,3)*axyz(ep,3,1)
1544 rlz(ep,2) =vq(ep,1,3)*axyz(ep,1,2)+vq(ep,2,3)*axyz(ep,2,2)+vq(ep,3,3)*axyz(ep,3,2)
1545 rlz(ep,3) =vq(ep,1,3)*axyz(ep,1,3)+vq(ep,2,3)*axyz(ep,2,3)+vq(ep,3,3)*axyz(ep,3,3)
1546 rlz(ep,4) =vq(ep,1,3)*axyz(ep,1,4)+vq(ep,2,3)*axyz(ep,2,4)+vq(ep,3,3)*axyz(ep,3,4)
1551#include "vectorize.inc"
1560 corel(1,1)=vcore(ep,1,1)
1561 corel(1,2)=vcore(ep,1,2)
1562 corel(1,3)=vcore(ep,1,3)
1563 corel(1,4)=vcore(ep,1,4)
1564 corel(2,1)=vcore(ep,2,1)
1565 corel(2,2)=vcore(ep,2,2)
1566 corel(2,3)=vcore(ep,2,3)
1567 corel(2,4)=vcore(ep,2,4)
1573 mx13=(vcore(ep,1,1)+vcore(ep,1,3))*half
1574 my13=(vcore(ep,2,1)+vcore(ep,2,3))*half
1575 mx23=(vcore(ep,1,2)+vcore(ep,1,3))*half
1576 my23=(vcore(ep,2,2)+vcore(ep,2,3))*half
1577 mx34=(vcore(ep,1,3)+vcore(ep,1,4))*half
1578 my34=(vcore(ep,2,3)+vcore(ep,2,4))*half
1579 x13_t(ep) =x13*area_i(ep)
1580 x24_t(ep) =x24*area_i(ep)
1581 y13_t(ep) =y13*area_i(ep)
1582 y24_t(ep) =y24*area_i(ep)
1584 gama1=-mx13*y24+my13*x24
1585 gama2= mx13*y13-my13*x13
1590 x34 =(corel(1,3)-corel(1,4))*half
1592 y34 =(corel(2,3)-corel(2,4))*half
1595 l12 = sqrt(x21*x21+y21*y21+z2)
1596 l34 = sqrt(x34*x34+y34*y34+z2)
1599 x32 =(corel(1,3)-corel(1,2))*half
1601 y32 =(corel(2,3)-corel(2,2))*half
1624 vqg(ep,7,3)=-vqg(ep,7,1)
1625 vqg(ep,8,3)=-vqg(ep,8,1)
1626 vqg(ep,7,1)= vqg(ep,7,1)*sl
1627 vqg(ep,8,1)= vqg(ep,8,1)*sl
1631 c1 = sqrt(g1x1*g1x1 + g1y1*g1y1 +j2myz )
1634 c2 = sqrt(g2x1*g2x1 + g2y1*g2y1 +j2myz)
1635 vjfi(ep,1,1)=(g2y1*vqg(ep,9,1)+jmz13*vqg(ep,8,1))
1636 vjfi(ep,2,1)=(-jmz13*vqg(ep,7,1)-g2x1*vqg(ep,9,1))
1637 vjfi(ep,3,1)=(g2x1*vqg(ep,8,1)-g2y1*vqg(ep,7,1))
1638 vqg(ep,1,1)= g1x1*c2+vjfi(ep,1,1)*c1
1639 vqg(ep,2,1)= g1y1*c2+vjfi(ep,2,1)*c1
1640 vqg(ep,3,1)= -jmz13*c2+vjfi(ep,3,1)*c1
1642 vjfi(ep,1,1)=vjfi(ep,1,1)*sl
1643 vjfi(ep,2,1)=vjfi(ep,2,1)*sl
1644 vjfi(ep,3,1)=vjfi(ep,3,1)*sl
1646 vjfi(ep,4,1)=(-jmz13*vqg(ep,8,1)-g1y1*vqg(ep,9,1))*sl
1647 vjfi(ep,5,1)=(g1x1*vqg(ep,9,1)+jmz13*vqg(ep,7,1))*sl
1648 vjfi(ep,6,1)=(g1y1*vqg(ep,7,1)-g1x1*vqg(ep,8,1))*sl
1650 sl = sqrt(vqg(ep,1,1)*vqg(ep,1,1) + vqg(ep,2,1)*vqg(ep,2,1) + vqg(ep,3,1)*vqg(ep,3,1))
1651 IF ( sl/=zero) sl = one / sl
1652 vqg(ep,1,1) = vqg(ep,1,1)*sl
1653 vqg(ep,2,1) = vqg(ep,2,1)*sl
1654 vqg(ep,3,1) = vqg(ep,3,1)*sl
1656 vqg(ep,4,1)= vqg(ep,8,1)*vqg(ep,3,1)-vqg(ep,9,1)*vqg(ep,2,1)
1657 vqg(ep,5,1)= vqg(ep,9,1)*vqg(ep,1,1)-vqg(ep,7,1)*vqg(ep,3,1)
1658 vqg(ep,6,1)= vqg(ep,7,1)*vqg(ep,2,1)-vqg(ep,8,1)*vqg(ep,1,1)
1664 vqg(ep,7,3)= vqg(ep,7,3)*sl
1665 vqg(ep,8,3)= vqg(ep,8,3)*sl
1670 j1 = sqrt(g1x3*g1x3 + g1y3*g1y3 +j2myz )
1674 j2 = sqrt(g2x2*g2x2 + g2y2*g2y2 +j2myz)
1675 vjfi(ep,1,3)=(g2y2*vqg(ep,9,3)-jmz13*vqg(ep,8,3))
1676 vjfi(ep,2,3)=(jmz13*vqg(ep,7,3)-g2x2*vqg(ep,9,3))
1677 vjfi(ep,3,3)=(g2x2*vqg(ep,8,3)-g2y2*vqg(ep,7,3))
1678 vqg(ep,1,3)= g1x3*j2+vjfi(ep,1,3)*j1
1679 vqg(ep,2,3)= g1y3*j2+vjfi(ep,2,3)*j1
1680 vqg(ep,3,3)= jmz13*j2+vjfi(ep,3,3)*j1
1682 vjfi(ep,1,3)=vjfi(ep,1,3)*sl
1683 vjfi(ep,2,3)=vjfi(ep,2,3)*sl
1684 vjfi(ep,3,3)=vjfi(ep,3,3)*sl
1686 vjfi(ep,4,3)=(jmz13*vqg(ep,8,3)-g1y3*vqg(ep,9,3))*sl
1687 vjfi(ep,5,3)=(g1x3*vqg(ep,9,3)-jmz13*vqg(ep,7,3))*sl
1688 vjfi(ep,6,3)=(g1y3*vqg(ep,7,3)-g1x3*vqg(ep,8,3))*sl
1690 sl = sqrt(vqg(ep,1,3)*vqg(ep,1,3) + vqg(ep,2,3)*vqg(ep,2,3) + vqg(ep,3,3)*vqg(ep,3,3))
1691 IF ( sl/=zero) sl = one / sl
1692 vqg(ep,1,3) = vqg(ep,1,3)*sl
1693 vqg(ep,2,3) = vqg(ep,2,3)*sl
1694 vqg(ep,3,3) = vqg(ep,3,3)*sl
1696 vqg(ep,4,3)= vqg(ep,8,3)*vqg(ep,3,3)-vqg(ep,9,3)*vqg(ep,2,3)
1697 vqg(ep,5,3)= vqg(ep,9,3)*vqg(ep,1,3)-vqg(ep,7,3)*vqg(ep,3,3)
1698 vqg(ep,6,3)= vqg(ep,7,3)*vqg(ep,2,3)-vqg(ep,8,3)*vqg(ep,1,3)
1708 vqg(ep,7,4)=-vqg(ep,7,2)
1709 vqg(ep,8,4)=-vqg(ep,8,2)
1710 vqg(ep,7,2)= vqg(ep,7,2)*sl
1711 vqg(ep,8,2)= vqg(ep,8,2)*sl
1713 vjfi(ep,1,2)=(g2y2*vqg(ep,9,2)-jmz13*vqg(ep,8,2))
1714 vjfi(ep,2,2)=(jmz13*vqg(ep,7,2)-g2x2*vqg(ep,9,2))
1715 vjfi(ep,3,2)=(g2x2*vqg(ep,8,2)-g2y2*vqg(ep,7,2))
1716 vqg(ep,1,2)= g1x1*j2+vjfi(ep,1,2)*c1
1717 vqg(ep,2,2)= g1y1*j2+vjfi(ep,2,2)*c1
1718 vqg(ep,3,2)=-jmz13*j2+vjfi(ep,3,2)*c1
1720 vjfi(ep,1,2)=vjfi(ep,1,2)*sl
1721 vjfi(ep,2,2)=vjfi(ep,2,2)*sl
1722 vjfi(ep,3,2)=vjfi(ep,3,2)*sl
1724 vjfi(ep,4,2)=(-jmz13*vqg(ep,8,2)-g1y1*vqg(ep,9,2))*sl
1725 vjfi(ep,5,2)=(g1x1*vqg(ep,9,2)+jmz13*vqg(ep,7,2))*sl
1726 vjfi(ep,6,2)=(g1y1*vqg(ep,7,2)-g1x1*vqg(ep,8,2))*sl
1728 sl = sqrt(vqg(ep,1,2)*vqg(ep,1,2) + vqg(ep,2,2)*vqg(ep,2,2) + vqg(ep,3,2)*vqg(ep,3,2))
1729 IF ( sl/=zero) sl = one / sl
1730 vqg(ep,1,2) = vqg(ep,1,2)*sl
1731 vqg(ep,2,2) = vqg(ep,2,2)*sl
1732 vqg(ep,3,2) = vqg(ep,3,2)*sl
1733 vqg(ep,4,2)= vqg(ep,8,2)*vqg(ep,3,2)-vqg(ep,9,2)*vqg(ep,2,2)
1734 vqg(ep,5,2)= vqg(ep,9,2)*vqg(ep,1,2)-vqg(ep,7,2)*vqg(ep,3,2)
1735 vqg(ep,6,2)= vqg(ep,7,2)*vqg(ep,2,2)-vqg(ep,8,2)*vqg(ep,1,2)
1741 vqg(ep,7,4)= vqg(ep,7,4)*sl
1742 vqg(ep,8,4)= vqg(ep,8,4)*sl
1745 vjfi(ep,1,4)=(g2y1*vqg(ep,9,4)+jmz13*vqg(ep,8,4))
1746 vjfi(ep,2,4)=(-jmz13*vqg(ep,7,4)-g2x1*vqg(ep,9,4))
1747 vjfi(ep,3,4)=(g2x1*vqg(ep,8,4)-g2y1*vqg(ep,7,4))
1748 vqg(ep,1,4)= g1x3*c2+vjfi(ep,1,4)*j1
1749 vqg(ep,2,4)= g1y3*c2+vjfi(ep,2,4)*j1
1750 vqg(ep,3,4)=jmz13*c2+vjfi(ep,3,4)*j1
1752 vjfi(ep,1,4)=vjfi(ep,1,4)*sl
1753 vjfi(ep,2,4)=vjfi(ep,2,4)*sl
1754 vjfi(ep,3,4)=vjfi(ep,3,4)*sl
1756 vjfi(ep,4,4)=(jmz13*vqg(ep,8,4)-g1y3*vqg(ep,9,4))*sl
1757 vjfi(ep,5,4)=(g1x3*vqg(ep,9,4)-jmz13*vqg(ep,7,4))*sl
1758 vjfi(ep,6,4)=(g1y3*vqg(ep,7,4)-g1x3*vqg(ep,8,4))*sl
1760 sl = sqrt(vqg(ep,1,4)*vqg(ep,1,4) + vqg(ep,2,4)*vqg(ep,2,4) + vqg(ep,3,4)*vqg(ep,3,4))
1761 IF ( sl/=zero) sl = one / sl
1762 vqg(ep,1,4) = vqg(ep,1,4)*sl
1763 vqg(ep,2,4) = vqg(ep,2,4)*sl
1764 vqg(ep,3,4) = vqg(ep,3,4)*sl
1765 vqg(ep,4,4)= vqg(ep,8,4)*vqg(ep,3,4)-vqg(ep,9,4)*vqg(ep,2,4)
1766 vqg(ep,5,4)= vqg(ep,9,4)*vqg(ep,1,4)-vqg(ep,7,4)*vqg(ep,3,4)
1767 vqg(ep,6,4)= vqg(ep,7,4)*vqg(ep,2,4)-vqg(ep,8,4)*vqg(ep,1,4)
1768 area(ep)=jac(ep,1)+jac(ep,2)+jac(ep,3)+jac(ep,4)
1775 vxyz(ep,1,1)= half*v13(ep,1)+fourth*vhi(ep,1)
1776 vxyz(ep,1,2)= half*v24(ep,1)-fourth*vhi(ep,1)
1777 vxyz(ep,1,3)= -half*v13(ep,1)+fourth*vhi(ep,1)
1778 vxyz(ep,1,4)= -half*v24(ep,1)-fourth*vhi(ep,1)
1780 vxyz(ep,2,1)= half*v13(ep,2)+fourth*vhi(ep,2)
1781 vxyz(ep,2,2)= half*v24(ep,2)-fourth*vhi(ep,2)
1782 vxyz(ep,2,3)= -half*v13(ep,2)+fourth*vhi(ep,2)
1783 vxyz(ep,2,4)= -half*v24(ep,2)-fourth*vhi(ep,2)
1785 vxyz(ep,3,1)= half*v13(ep,3)+fourth*vhi(ep,3)
1786 vxyz(ep,3,2)= half*v24(ep,3)-fourth*vhi(ep,3)
1787 vxyz(ep,3,3)= -half*v13(ep,3)+fourth*vhi(ep,3)
1788 vxyz(ep,3,4)= -half*v24(ep,3)-fourth*vhi(ep,3)
1791 rr(1,1) =vq(ep,1,1)*axyz(ep,1,1)+vq(ep,2,1)*axyz(ep,2,1)+vq(ep,3,1)*axyz(ep,3,1)
1792 rr(1,2) =vq(ep,1,1)*axyz(ep,1,2)+vq(ep,2,1)*axyz(ep,2,2)+vq(ep,3,1)*axyz(ep,3,2)
1793 rr(1,3) =vq(ep,1,1)*axyz(ep,1,3)+vq(ep,2,1)*axyz(ep,2,3)+vq(ep,3,1)*axyz(ep,3,3)
1794 rr(1,4) =vq(ep,1,1)*axyz(ep,1,4)+vq(ep,2,1)*axyz(ep,2,4)+vq(ep,3,1)*axyz(ep,3,4)
1795 rr(2,1) =vq(ep,1,2)*axyz(ep,1,1)+vq(ep,2,2)*axyz(ep,2,1)+vq(ep,3,2)*axyz(ep,3,1)
1796 rr(2,2) =vq(ep,1,2)*axyz(ep,1,2)+vq(ep,2,2)*axyz(ep,2,2)+vq(ep,3,2)*axyz(ep,3,2)
1797 rr(2,3) =vq(ep,1,2)*axyz(ep,1,3)+vq(ep,2,2)*axyz(ep,2,3)+vq(ep,3,2)*axyz(ep,3,3)
1798 rr(2,4) =vq(ep,1,2)*axyz(ep,1,4)+vq(ep,2,2)*axyz(ep,2,4)+vq(ep,3,2)*axyz(ep,3,4)
1799 rr(3,1) =vq(ep,1,3)*axyz(ep,1,1)+vq(ep,2,3)*axyz(ep,2,1)+vq(ep,3,3)*axyz(ep,3,1)
1800 rr(3,2) =vq(ep,1,3)*axyz(ep,1,2)+vq(ep,2,3)*axyz(ep,2,2)+vq(ep,3,3)*axyz(ep,3,2)
1801 rr(3,3) =vq(ep,1,3)*axyz(ep,1,3)+vq(ep,2,3)*axyz(ep,2,3)+vq(ep,3,3)*axyz(ep,3,3)
1802 rr(3,4) =vq(ep,1,3)*axyz(ep,1,4)+vq(ep,2,3)*axyz(ep,2,4)+vq(ep,3,3)*axyz(ep,3,4)
1804 rlz(ep,1)=(vqn(ep,7,1)*rr(1,1)+vqn(ep,8,1)*rr(2,1)+vqn(ep,9,1)*rr(3,1))
1805 rlz(ep,2)=(vqn(ep,7,2)*rr(1,2)+vqn(ep,8,2)*rr(2,2)+vqn(ep,9,2)*rr(3,2))
1806 rlz(ep,3)=(vqn(ep,7,3)*rr(1,3)+vqn(ep,8,3)*rr(2,3)+vqn(ep,9,3)*rr(3,3))
1807 rlz(ep,4)=(vqn(ep,7,4)*rr(1,4)+vqn(ep,8,4)*rr(2,4)+vqn(ep,9,4)*rr(3,4))
1813 off_l =
min(off_l,offg(ep))
1818 IF(offg(ep)<zero)
THEN
1819 vxyz(ep,1:3,1:4)= zero