36 2 MSR ,NSV ,IRTL ,MS ,WEIGHT ,
37 3 STIFN ,MMASS ,IDEL2 ,SMASS ,X ,
38 4 V ,FSAV ,FNCONT ,INDXC ,H3D_DATA,
39 5 IN ,SINER ,DPARA ,MSEGTYP2,AR ,
40 6 STIFR ,CSTS_BIS,T2FAC_SMS,FNCONTP,FTCONTP)
48#include "implicit_f.inc"
53 . IRECT(4,*), (*), NSV(*), IRTL(*), WEIGHT(*),INDXC(NSN),MSEGTYP2(*)
56 . X(3,*),V(3,*),A(3,*),MS(*),CRST(2,*),STIFN(*),MMASS(*),SMASS(*),
57 . fsav(*),fncont(3,*),in(*),siner(*),dpara(7,*),ar(3,*),stifr(*),csts_bis(2,*),
58 . t2fac_sms(*),fncontp(3,*) ,ftcontp(3,*)
59 TYPE (H3D_DATABASE) :: H3D_DATA
69 INTEGER NIR, I, J, K, II, L, JJ,
73 . H(4),XMSJ, SS, ST, XMSI,FS(3),SP,SM,TP,TM,
74 . e1x,e1y,e1z,e2x,e2y,e2z,e3x,e3y,e3z,
75 . x1,x2,x3,x4,y1,y2,y3,y4,z1,z2,z3,z4,x0,y0,z0,xs(3),xm(3),
76 . stifm,fmx(4),fmy(4),fmz(4),fx(4),fy(4),fz(4),
77 . rx(4),ry(4),rz(4),rs(3),flx,fly,flz,fac_triang,stbrk,
78 . mxs,mys,mzs,stifmr,dwdu,rm(3),betax,betay,h2(4),mxi,myi,mzi
92 fs(1)=a(1,i)*weight(i)
93 fs(2)=a(2,i)*weight(i)
94 fs(3)=a(3,i)*weight(i)
112 h(3) = one-crst(1,ii)-crst(2,ii)
114 h2(1) = csts_bis(1,ii)
115 h2(2) = csts_bis(2,ii)
116 h2(3) = one-csts_bis(1,ii)-csts_bis(2,ii)
145 IF (msegtyp2(l)==0)
THEN
169 CALL i2rep(x1 ,x2 ,x3 ,x4 ,
174 . e3x ,e3y ,e3z ,nir)
179 x0 = fourth*(x1 + x2 + x3 + x4)
180 y0 = fourth*(y1 + y2 + y3 + y4)
181 z0 = fourth*(z1 + z2 + z3 + z4)
184 x0 = third*(x1 + x2 + x3)
185 y0 = third*(y1 + y2 + y3)
186 z0 = third*(z1 + z2 + z3)
211 xm(1) = x1*h(1) + x2*h(2) + x3*h(3) + x4*h(4)
212 xm(2) = y1*h(1) + y2*h(2) + y3*h(3) + y4*h(4)
213 xm(3) = z1*h(1) + z2*h(2) + z3*h(3) + z4*h(4)
217 rs(1) = xs(1)*e1x + xs(2)*e1y + xs(3)*e1z
218 rs(2) = xs(1)*e2x + xs(2)*e2y + xs(3)*e2z
219 rs(3) = xs(1)*e3x + xs(2)*e3y + xs(3)*e3z
221 rm(1) = xm(1)*e1x + xm(2)*e1y + xm(3)*e1z
222 rm(2) = xm(1)*e2x + xm(2)*e2y + xm(3)*e2z
223 rm(3) = xm(1)*e3x + xm(2)*e3y + xm(3)*e3z
225 rx(1) = e1x*x1 + e1y*y1 + e1z*z1
226 ry(1) = e2x*x1 + e2y*y1 + e2z*z1
227 rz(1) = e3x*x1 + e3y*y1 + e3z*z1
228 rx(2) = e1x*x2 + e1y*y2 + e1z*z2
229 ry(2) = e2x*x2 + e2y*y2 + e2z*z2
230 rz(2) = e3x*x2 + e3y*y2 + e3z*z2
231 rx(3) = e1x*x3 + e1y*y3 + e1z*z3
232 ry(3) = e2x*x3 + e2y*y3 + e2z*z3
233 rz(3) = e3x*x3 + e3y*y3 + e3z*z3
234 rx(4) = e1x*x4 + e1y*y4 + e1z*z4
235 ry(4) = e2x*x4 + e2y*y4 + e2z*z4
236 rz(4) = e3x*x4 + e3y*y4 + e3z*z4
239 CALL i2cin_rot27(stbrk,rs,rm,rx(1),ry(1),rz(1),rx(2),ry(2),rz(2),rx(3),ry(3),rz(3),
240 . rx(4),ry(4),rz(4),dpara(1,ii),dwdu
245 flx = fs(1)*e1x + fs(2)*e1y + fs(3)*e1z
246 fly = fs(1)*e2x + fs(2)*e2y + fs(3)*e2z
247 flz = fs(1)*e3x + fs(2)*e3y + fs(3)*e3z
257 mxs = mxi*e1x + myi*e1y + mzi*e1z
258 mys = mxi*e2x + myi*e2y + mzi*e2z
259 mzs = mxi*e3x + myi*e3y + mzi*e3z
263 . fmx ,fmy ,fmz ,h ,stifm ,
264 . mxs ,mys ,mzs ,stifmr ,betax ,
273 . fmx ,fmy ,fmz ,h ,stifm ,
274 . mxs ,mys ,mzs ,stifmr ,betax ,
282 fx(j) = e1x*fmx(j) + e2x*fmy(j) + e3x*fmz(j)
283 fy(j) = e1y*fmx(j) + e2y*fmy(j) + e3y*fmz(j)
284 fz(j) = e1z*fmx(j) + e2z*fmy(j) + e3z*fmz(j)
311 ms(j)=ms(j)+xmsi*h2(jj)
312 stifn(j)=stifn(j)+weight(i)*(stifn(i)*(one+stbrk)*(abs(h(jj))+stifm)+stifr(i)*stifmr*dwdu)
320 ms(j)=ms(j)+xmsi*h2(jj)
321 stifn(j)=stifn(j)+weight(i)*(stifn(i)*(one+stbrk)*(abs(h(jj))+stifm))
327 . irect(1,l),nir ,fsav ,fncont ,fncontp,
328 . ftcontp ,weight ,h3d_data,i ,h)
331 IF(idel2/=0.AND.ms(i)/=0.)smass(ii)=ms(i)
354 fs(1)=a(1,i)*weight(i)
355 fs(2)=a(2,i)*weight(i)
356 fs(3)=a(3,i)*weight(i)
358 IF (iroddl == 1)
THEN
359 mxi=ar(1,i)*weight(i)
360 myi=ar(2,i)*weight(i)
361 mzi=ar(3,i)*weight(i)
374 h(3) = one-crst(1,ii)-crst(2,ii)
376 h2(1) = csts_bis(1,ii)
377 h2(2) = csts_bis(2,ii)
378 h2(3) = one-csts_bis(1,ii)-csts_bis(2,ii)
407 IF (msegtyp2(l)==0)
THEN
431 CALL i2rep(x1 ,x2 ,x3 ,x4 ,
436 . e3x ,e3y ,e3z ,nir)
441 x0 = fourth*(x1 + x2 + x3 + x4)
443 z0 = fourth*(z1 + z2 + z3 + z4)
446 x0 = third*(x1 + x2 + x3)
447 y0 = third*(y1 + y2 + y3)
448 z0 = third*(z1 + z2 + z3)
473 xm(1) = x1*h(1) + x2*h(2) + x3*h(3) + x4*h(4)
474 xm(2) = y1*h(1) + y2*h(2) + y3*h(3) + y4*h(4)
475 xm(3) = z1*h(1) + z2*h(2) + z3*h(3) + z4*h(4)
479 rs(1) = xs(1)*e1x + xs(2)*e1y + xs(3)*e1z
480 rs(2) = xs(1)*e2x + xs(2)*e2y + xs(3)*e2z
481 rs(3) = xs(1)*e3x + xs(2)*e3y + xs(3)*e3z
483 rm(1) = xm(1)*e1x + xm(2)*e1y + xm(3)*e1z
484 rm(2) = xm(1)*e2x + xm(2)*e2y + xm(3)*e2z
485 rm(3) = xm(1)*e3x + xm(2)*e3y + xm(3)*e3z
487 rx(1) = e1x*x1 + e1y*y1 + e1z*z1
488 ry(1) = e2x*x1 + e2y*y1 + e2z*z1
489 rz(1) = e3x*x1 + e3y*y1 + e3z*z1
490 rx(2) = e1x*x2 + e1y*y2 + e1z*z2
491 ry(2) = e2x*x2 + e2y*y2 + e2z*z2
492 rz(2) = e3x*x2 + e3y*y2 + e3z*z2
493 rx(3) = e1x*x3 + e1y*y3 + e1z*z3
494 ry(3) = e2x*x3 + e2y*y3 + e2z*z3
495 rz(3) = e3x*x3 + e3y*y3 + e3z*z3
496 rx(4) = e1x*x4 + e1y*y4 + e1z*z4
497 ry(4) = e2x*x4 + e2y*y4 + e2z*z4
498 rz(4) = e3x*x4 + e3y*y4 + e3z*z4
501 CALL i2cin_rot27(stbrk,rs,rm,rx(1),ry(1),rz(1),rx(2),ry(2),rz(2),rx(3),ry(3),rz(3),
502 . rx(4),ry(4),rz(4),dpara(1,ii),dwdu,e1x,e1y,e1z,e2x,e2y,e2z,e3x,e3y,e3z,
507 flx = fs(1)*e1x + fs(2)*e1y + fs(3)*e1z
508 fly = fs(1)*e2x + fs(2)*e2y + fs(3)*e2z
509 flz = fs(1)*e3x + fs(2)*e3y + fs(3)*e3z
519 mxs = mxi*e1x + myi*e1y + mzi*e1z
520 mys = mxi*e2x + myi*e2y + mzi*e2z
521 mzs = mxi*e3x + myi*e3y + mzi*e3z
525 . fmx ,fmy ,fmz ,h ,stifm ,
526 . mxs ,mys ,mzs ,stifmr ,betax ,
535 . fmx ,fmy ,fmz ,h ,stifm ,
544 fx(j) = e1x*fmx(j) + e2x*fmy(j) + e3x*fmz(j)
545 fy(j) = e1y*fmx(j) + e2y*fmy(j) + e3y*fmz(j)
546 fz(j) = e1z*fmx(j) + e2z*fmy(j) + e3z*fmz(j)
573 ms(j)=ms(j)+xmsi*h2(jj)
574 stifn(j)=stifn(j)+weight(i)*(stifn(i)*(one+stbrk)*(abs(h(jj))+stifm)+stifr(i)*stifmr*dwdu)
582 ms(j)=ms(j)+xmsi*h2(jj)
583 stifn(j)=stifn(j)+weight(i)*(stifn(i)*(one+stbrk)*(abs
587 IF(idtmins==2.OR.idtmins_int/=0)
THEN
589 t2fac_sms(i) = (one+stbrk)*(one+stifm)
594 . irect(1,l),nir ,fsav ,fncont ,fncontp,
595 . ftcontp ,weight ,h3d_data,i ,h)
598 IF(idel2/=0.AND.ms(i)/=0.) smass(ii)=ms(i)