35 2 MS ,WEIGHT ,STIFN ,MMASS ,FSKYI2 ,
36 3 IADI2 ,I0 ,NIR ,I2SIZE ,IDEL2 ,
37 4 SMASS ,IRECT ,X ,V ,FSAV ,
38 5 FNCONT ,IRTL ,H3D_DATA, CSTS_BIS,FNCONTP ,
47#include "implicit_f.inc"
51 INTEGER NSN, NMN, I0, NIR, I2SIZE, IDEL2,
52 . IRECT(4,*),IADI2(,*), NSV(*), WEIGHT(*), IRTL(*)
55 . X(*),V(*),A(*), CRST(2,*), MS(*), STIFN(*), MMASS(*),
56 . fskyi2(i2size,*), smass(*),fsav(*),fncont(3,*),csts_bis(2,*),
57 . fncontp(3,*) ,ftcontp(3,*)
58 TYPE (H3D_DATABASE) :: H3D_DATA
66 INTEGER I, I1, I2, I3, II, NN, L, J, JJ
69 . SS, ST, XMSI, FS(3),SP,SM,TP,TM,
70 . H(4),H2(4),FX(4),FY(4),FZ(4)
81 IF (weight(i)==1)
THEN
108 fx(1:2) = fs(1)*h(1:2)
109 fy(1:2) = fs(2)*h(1:2)
110 fz(1:2) = fs(3)*h(1:2)
120 fskyi2(4,nn) = xmsi*h2(1)
121 fskyi2(5,nn) = abs(stifn(i)*h(1))
127 fskyi2(4,nn) = xmsi*h2(2)
128 fskyi2(5,nn) = abs(stifn(i)*h(2))
132 . irect(1,l),nir ,fsav ,fncont ,fncontp,
133 . ftcontp ,weight ,h3d_data,i ,h)
136 IF(idel2/=0.AND.ms(i)/=0.)smass(ii)=ms(i)
142 ELSEIF(weight(-i)==1)
THEN
168 IF (weight(i)==1)
THEN
198 fx(1:4) = fs(1)*h(1:4)
199 fy(1:4) = fs(2)*h(1:4)
200 fz(1:4) = fs(3)*h(1:4)
207 fskyi2(4,nn) = xmsi*h2(1)
208 fskyi2(5,nn) = abs(stifn(i)*h(1))
214 fskyi2(4,nn) = xmsi*h2(2)
215 fskyi2(5,nn) = abs(stifn(i)*h(2))
221 fskyi2(4,nn) = xmsi*h2(3)
222 fskyi2(5,nn) = abs(stifn(i)*h(3))
228 fskyi2(4,nn) = xmsi*h2(4)
229 fskyi2(5,nn) = abs(stifn(i)*h(4))
234 . irect(1,l),nir ,fsav ,fncont ,fncontp,
235 . ftcontp ,weight ,h3d_data,i ,h)
239 IF(idel2/=0.AND.ms(i)/=0.)smass(ii)=ms(i)
247 ELSEIF(weight(-i)==1)
THEN
291 2 NSV ,MS ,WEIGHT ,STIFN ,MMASS ,
292 3 FSKYI2 ,IADI2 ,I0 ,NIR ,I2SIZE ,
293 4 IRECT ,X ,V ,FSAV ,FNCONT ,
294 5 IRTL ,H3D_DATA, CSTS_BIS,FNCONTP,FTCONTP)
302#include "implicit_f.inc"
306 INTEGER NSN, NMN, I0, NIR, I2SIZE,
307 . irect(4,*),iadi2(nir,*),
308 . msr(*), nsv(*), weight(*), irtl(*)
311 . x(*),v(*),a(*),crst(2,*),ms(*),stifn(*), mmass(*),fsav(*),
312 . fskyi2(i2size,*),fncont(3,*), csts_bis(2,*),
313 . fncontp(3,*),ftcontp(3,*)
314 TYPE (H3D_DATABASE) :: H3D_DATA
318#include "com01_c.inc"
322 INTEGER I, J, , I2, I3, II, JJ, NN, L
326 . ss, st, xmsi, fs(3),sp,sm,tp,tm,h2(4),
345 IF (weight(i)==1)
THEN
362 fx(1:2) = fs(1)*h(1:2)
363 fy(1:2) = fs(2)*h(1:2)
364 fz(1:2) = fs(3)*h(1:2)
374 fskyi2(4,nn) = xmsi*h(1)
375 fskyi2(5,nn) = abs(stifn(i)*h(1))
381 fskyi2(4,nn) = xmsi*h(2)
382 fskyi2(5,nn) = abs(stifn(i)*h(2))
388 ELSEIF(weight(-i)==1)
THEN
414 IF (weight(i)==1)
THEN
444 fx(1:4) = fs(1)*h(1:4)
445 fy(1:4) = fs(2)*h(1:4)
446 fz(1:4) = fs(3)*h(1:4)
453 fskyi2(4,nn) = xmsi*h2(1)
454 fskyi2(5,nn) = abs(stifn(i)*h(1))
460 fskyi2(4,nn) = xmsi*h2(2)
461 fskyi2(5,nn) = abs(stifn(i)*h(2))
467 fskyi2(4,nn) = xmsi*h2(3)
468 fskyi2(5,nn) = abs(stifn(i)*h(3))
474 fskyi2(4,nn) = xmsi*h2(4)
475 fskyi2(5,nn) = abs(stifn(i)*h(4))
480 . irect(1,l),nir ,fsav ,fncont ,fncontp,
481 . ftcontp ,weight ,h3d_data,i ,h)
491 ELSEIF(weight(-i)==1)
THEN
534 2 NSV ,MS ,WEIGHT ,STIFN ,MMASS ,
535 3 FSKYI2 ,IADI2 ,I0 ,NIR ,I2SIZE ,
536 4 IRECT ,X ,V ,FSAV ,FNCONT ,
537 5 IRTL ,H3D_DATA, CSTS_BIS,FNCONTP,FTCONTP)
545#include "implicit_f.inc"
549 INTEGER NSN, NMN, I0, NIR, I2SIZE,
550 . IRECT(4,*),IADI2(NIR,*),
551 . MSR(*), NSV(*), WEIGHT(*), IRTL(*)
554 . x(*),v(*),a(*), crst(2,*), ms(*), stifn(*), mmass(*),fsav(*),
555 . fskyi2(i2size,*),fncont(3,*),csts_bis(2,*),
556 . fncontp(3,*),ftcontp(3,*)
557 TYPE (H3D_DATABASE) :: H3D_DATA
561 INTEGER I, J, I1, I2, I3, II, JJ, NN, L
564 . ss, st, xmsi, fs(3),sp,sm,tp,tm,
565 . h(4),h2(4),fx(4),fy(4),fz(4)
580 IF (weight(i)==1)
THEN
597 fx(1:2) = fs(1)*h(1:2)
598 fy(1:2) = fs(2)*h(1:2)
599 fz(1:2) = fs(3)*h(1:2)
609 fskyi2(4,nn) = xmsi*h(1)
610 fskyi2(5,nn) = abs(stifn(i)*h(1))
616 fskyi2(4,nn) = xmsi*h(2)
617 fskyi2(5,nn) = abs(stifn(i)*h(2))
633 IF (weight(i)==1)
THEN
663 fx(1:4) = fs(1)*h(1:4)
664 fy(1:4) = fs(2)*h(1:4)
665 fz(1:4) = fs(3)*h(1:4)
672 fskyi2(4,nn) = xmsi*h2(1)
673 fskyi2(5,nn) = abs(stifn(i)*h(1))
679 fskyi2(4,nn) = xmsi*h2(2)
680 fskyi2(5,nn) = abs(stifn(i)*h(2))
686 fskyi2(4,nn) = xmsi*h2(3)
687 fskyi2(5,nn) = abs(stifn(i)*h(3))
693 fskyi2(4,nn) = xmsi*h2(4)
694 fskyi2(5,nn) = abs(stifn(i)*h(4))
699 . irect(1,l),nir ,fsav ,fncont ,fncontp,
700 . ftcontp ,weight ,h3d_data,i ,h)
721 2 MSR ,NSV ,IRTL ,IN ,MS ,
722 3 A ,X ,WEIGHT,STIFR,FSKYI2,
723 4 STIFN,IADI2,I0 ,NIR ,I2SIZE,
724 5 IDEL2,SMASS,SINER ,MINER,ADI ,
733#include "implicit_f.inc"
737 INTEGER NSN, NMN, I0 ,NIR ,I2SIZE, IDEL2,
738 . irect(4,*), msr(*), nsv(*), irtl(*), weight(*),
742 . a(3,*), ar(3,*),crst(2,*), ms(*),
743 . x(3,*),in(*),stifr(*), fskyi2(i2size
744 . smass(*), siner(*), miner(*), adi(*), csts_bis(2,*)
745 TYPE (H3D_DATABASE) :: H3D_DATA
749#include "scr14_c.inc"
750#include "scr16_c.inc"
754 INTEGER I, J, II, L, NN
757 . ss, st, xmsi, fs(3), moms(3),ins,
758 . x0,x1,x2,x3,x4,y0,y1,y2,y3,y4,z0,z1,z2,z3,z4,aa,
759 . xc0,yc0,zc0,sp,sm,tp,tm,xc,yc,zc,
760 . stf,ai,inmx,h(4),h2(4)
763 IF(anim_n(12)+outp_n(3)+h3d_data%N_SCAL_DINER >0)
THEN
766 adi(j) = adi(j)*miner(ii)
772 in(j)=
max(em20,in(j))
779 IF (weight(i)==1)
THEN
812 xc = x1 * h(1) + x2 * h(
813 yc = y1 * h(1) + y2 * h(2)
814 zc = z1 * h(1) + z2 * h(2)
820 aa = xc0*xc0 + yc0*yc0 + zc0*zc0
821 ins = in(i) + aa * ms(i
822 stf = stifr(i) + aa * stifn(i)
824 IF (anim_n(12)+outp_n(3)+h3d_data%N_SCAL_DINER >0)
THEN
826 adi(irect(1,l))=adi(irect(1,l))+ai*h(1)
827 adi(irect(2,l))=adi(irect(2,l))+ai*h(2)
834 moms(1) = ar(1,i) + yc0 * fs(3) - zc0 * fs(2)
835 moms(2) = ar(2,i) + zc0 * fs(1) - xc0 * fs(3)
836 moms(3) = ar(3,i) + xc0 * fs(2) - yc0 * fs(1)
840 IF (in(irect(j,l)) > em20)
THEN
842 fskyi2(6,nn) = moms(1)*h(j)
843 fskyi2(7,nn) = moms(2)*h(j)
844 fskyi2(8,nn) = moms(3)*h(j)
845 fskyi2(9,nn) = ins*h2(j)
846 fskyi2(10,nn)= abs(stf*h(j))
860 IF(idel2/=0.AND.in(i)/=0.)siner(ii)=in(i)
863 IF(idel2/=0.AND.ms(i)/=0.)smass(ii)=ms(i)
869 ELSEIF(weight(-i)==1)
THEN
890 IF (weight(i)==1)
THEN
933 xc = x1 * h(1) + x2 * h(2) + x3 * h(3) + x4 * h(4)
934 yc = y1 * h(1) + y2 * h(2) + y3 * h(3) + y4 * h(4)
935 zc = z1 * h(1) + z2 * h(2) + z3 * h(3) + z4 * h(4)
941 aa = xc0*xc0 + yc0*yc0 + zc0*zc0
942 ins = in(i) + aa * ms(i)
943 stf = stifr(i) + aa * stifn(i)
945 IF (anim_n(12)+outp_n(3)+h3d_data%N_SCAL_DINER >0)
THEN
947 adi(irect(1,l))=adi(irect(1,l))+ai*h(1)
948 adi(irect(2,l))=adi(irect(2,l))+ai*h(2)
949 adi(irect(3,l))=adi(irect(3,l))+ai*h
950 adi(irect(4,l))=adi(irect(4,l))+ai*h(4)
958 moms(2) = ar(2,i) + zc0 * fs(1) - xc0 * fs(3)
959 moms(3) = ar(3,i) + xc0 * fs(2) - yc0 * fs(1)
963 IF (in(irect(j,l)) > em20)
THEN
965 fskyi2(6,nn) = moms(1)*h(j)
966 fskyi2(7,nn) = moms(2)*h(j)
967 fskyi2(8,nn) = moms(3)*h(j)
968 fskyi2(9,nn) = ins*h2(j)
969 fskyi2(10,nn)= abs(stf*h(j))
983 IF(idel2/=0.AND.in(i)/=0.)siner(ii)=in(i)
986 IF(idel2/=0.AND.ms(i)/=0.)smass(ii)=ms(i)
992 ELSEIF(weight(-i)==1)
THEN
1005 fskyi2(10,nn) = zero
1011 fskyi2(10,nn) = zero
1017 fskyi2(10,nn) = zero
1025 IF(anim_n(12)+outp_n(3)+h3d_data%N_SCAL_DINER >0)
THEN
1026#include "vectorize.inc"
1029 adi(j) = adi(j)/
max(em20,miner(ii))
1042 2 MSR ,NSV,IRTL ,IN ,MS ,
1043 3 A ,X ,WEIGHT,STIFR ,FSKYI2,
1044 4 IADI2,I0 ,NIR ,I2SIZE,STIFN ,
1049#include "implicit_f.inc"
1053 INTEGER NSN, NMN, I0 ,NIR ,I2SIZE,
1054 . IRECT(4,*), MSR(*), NSV(*), IRTL(*), (*),
1058 . a(3,*), ar(3,*),crst(2,*), ms(*),
1059 . x(3,*),in(*),stifr(*), fskyi2(i2size,*), stifn(*), csts_bis(2,*)
1063 INTEGER I, J, II, L, NN
1066 . SS, ST, , FS(3), MOMS(3),INS,
1067 . X0,X1,X2,X3,X4,Y0,Y1,Y2,Y3,Y4,,Z1,Z2,Z3,Z4,AA,INMX,
1068 . XC0,YC0,ZC0,SP,SM,TP,TM,XC,YC,ZC,H1, H2,H3,,STF,
1071#include
"vectorize.inc"
1074 in(j)=
max(em20,in(j))
1079 IF (weight(i)==1)
THEN
1086 tp=fourth*(one + st)
1087 tm=fourth*(one - st)
1098 tp=fourth*(one + st)
1099 tm=fourth*(one - st)
1109 x1 = x(1,irect(1,l))
1110 y1 = x(2,irect(1,l))
1111 z1 = x(3,irect(1,l))
1112 x2 = x(1,irect(2,l))
1113 y2 = x(2,irect(2,l))
1114 z2 = x(3,irect(2,l))
1115 x3 = x(1,irect(3,l))
1117 z3 = x(3,irect(3,l))
1118 x4 = x(1,irect(4,l))
1119 y4 = x(2,irect(4,l))
1120 z4 = x(3,irect(4,l))
1122 xc = x1 * h1 + x2 * h2 + x3 * h3 + x4 * h4
1123 yc = y1 * h1 + y2 * h2 + y3 * h3 + y4 * h4
1124 zc = z1 * h1 + z2 * h2 + z3 * h3 + z4 * h4
1130 aa = xc0*xc0 + yc0*yc0 + zc0*zc0
1131 ins = in(i) + aa * ms(i)
1132 stf = stifr(i) + aa * stifn(i)
1138 moms(1) = ar(1,i) + yc0 * fs(3) - zc0 * fs(2)
1139 moms(2) = ar(2,i) + zc0 * fs(1) - xc0 * fs(3)
1140 moms(3) = ar(3,i) + xc0 * fs(2) - yc0 * fs(1)
1145 inmx =
max(inmx,in(irect(j,l)))
1147 IF (inmx > em20)
THEN
1149 fskyi2(6,nn) = moms(1)*h1
1150 fskyi2(7,nn) = moms(2)*h1
1151 fskyi2(8,nn) = moms(3)*h1
1152 fskyi2(9,nn) = ins*h21
1153 fskyi2(10,nn)= stf*h1
1156 fskyi2(6,nn) = moms(1)*h2
1157 fskyi2(7,nn) = moms(2)*h2
1158 fskyi2(8,nn) = moms(3)*h2
1159 fskyi2(9,nn) = ins*h22
1160 fskyi2(10,nn)= stf*h2
1163 fskyi2(6,nn) = moms(1)*h3
1164 fskyi2(7,nn) = moms(2)*h3
1165 fskyi2(8,nn) = moms(3)*h3
1166 fskyi2(9,nn) = ins*h23
1167 fskyi2(10,nn)= stf*h3
1170 fskyi2(6,nn) = moms(1)*h4
1172 fskyi2(8,nn) = moms(3)*h4
1174 fskyi2(10,nn)= stf*h4
1229 1 NSN ,NMN ,A ,IRECT ,DPARA ,
1230 2 MSR ,NSV ,IRTL ,MS ,WEIGHT ,
1231 3 AR ,IN ,X ,STIFN ,STIFR ,
1232 4 FSKYI2 ,IADI2 ,ILEV ,DMAST ,ADM ,
1233 5 MMASS ,I0 ,NIR ,I2SIZE ,IDEL2 ,
1234 6 SMASS ,SINER ,V ,CRST ,FSAV ,
1235 7 FNCONT ,H3D_DATA,FNCONTP,FTCONTP )
1243#include "implicit_f.inc"
1247 INTEGER NSN, NMN, ILEV, I0, NIR, I2SIZE, IDEL2,
1248 . IRECT(4,*), MSR(*), NSV(*), IRTL(*), WEIGHT(*),
1252 . A(3,*),AR(3,*), X(3,*),V(*), FSKYI2(I2SIZE,*),MMASS(*),
1253 . DPARA(7,*), MS(*), IN(*),STIFN(*),STIFR(*),DMAST,ADM(*),
1254 . SMASS(*), SINER(*),FSAV(*), CRST(2,*),FNCONT(3,*),
1255 . FNCONTP(3,*),FTCONTP(3,*)
1256 TYPE (H3D_DATABASE) :: H3D_DATA
1260#include "scr14_c.inc"
1261#include "scr16_c.inc"
1265 INTEGER I, J, J1,J2,J3,J4, II, L, JJ, NN,NISKY2
1269 . s,t,ss, st, xmsi, fs(3),sp,sm,tp,tm,
1270 . moms(3),det,fx0,fy0,fz0,ins,
1271 . x0,x1,x2,x3,x4,xs,y0,y1,y2,y3,y4,ys,z0,z1,z2,z3,z4,zs,
1272 . x12,x22,x32,x42,y12,y22,y32,y42,z12,z22,z32,z42,
1273 . xx,yy,zz,xxx,yyy,zzz,xy,yz,zx,xy2,yz2,zx2,
1274 . a1,a2,a3,b1,b2,b3,c1,c2,c3,mr,mrx,mry,mrz,inx,iny,inz,stf,
1280 IF(anim_n(2)+outp_n(2)+h3d_data%N_SCAL_DMAS >0.AND.ilev==1)
THEN
1283 adm(j) = adm(j)*mmass(ii)
1329 x0=fourth*(x1+x2+x3+x4)
1330 y0=fourth*(y1+y2+y3+y4)
1331 z0=fourth*(z1+z2+z3+z4)
1360 xx=x12 + x22 + x32 + x42
1361 yy=y12 + y22 + y32 + y42
1362 zz=z12 + z22 + z32 + z42
1363 xy=x1*y1 + x2*y2 + x3*y3 + x4*y4
1364 yz=y1*z1 + y2*z2 + y3*z3 + y4*z4
1365 zx=z1*x1 + z2*x2 + z3*x3 + z4*x4
1372 det= xxx*yyy*zzz - xxx*yz2 - yyy*zx2 - zzz*xy2
1390 IF (weight(i)==1)
THEN
1396 moms(1)=ar(1,i) + ys*fs(3) - zs*fs(2)
1397 moms(2)=ar(2,i) + zs*fs(1) - xs*fs(3)
1398 moms(3)=ar(3,i) + xs*fs(2) - ys*fs(1)
1400 a1=det*(moms(1)*b1+moms(2)*c3+moms(3)*c2)
1401 a2=det*(moms(2)*b2+moms(3)*c1+moms(1)*c3
1402 a3=det*(moms(3)*b3+moms(1)*c2+moms(2)*c1)
1412 inx=ins + xmsi*(xs*xs+ys*ys+zs*zs)
1416 mr=det*inx*
max(mrx,mry,mrz)
1424 xmsi=
max(fourth*xmsi,mr)
1427 stf = fourth*stifn(i)
1428 . + det*
max(mrx,mry,mrz)*(stifr(i)+stifn(i)*(xs*xs+ys*ys+zs*zs))
1431 fx(1) = fx0 + a2*z1 - a3*y1
1432 fy(1) = fy0 + a3*x1 - a1*z1
1433 fz(1) = fz0 + a1*y1 - a2*x1
1434 fskyi2(1,nn) = fx(1)
1435 fskyi2(2,nn) = fy(1)
1436 fskyi2(3,nn) = fz(1)
1445 fx(2) = fx0 + a2*z2 - a3*y2
1446 fy(2) = fy0 + a3*x2 - a1*z2
1447 fz(2) = fz0 + a1*y2 - a2*x2
1448 fskyi2(1,nn) = fx(2)
1449 fskyi2(2,nn) = fy(2)
1450 fskyi2(3,nn) = fz(2)
1459 fx(3) = fx0 + a2*z3 - a3*y3
1460 fy(3) = fy0 + a3*x3 - a1*z3
1461 fz(3) = fz0 + a1*y3 - a2*x3
1462 fskyi2(1,nn) = fx(3)
1463 fskyi2(2,nn) = fy(3)
1464 fskyi2(3,nn) = fz(3)
1473 fx(4) = fx0 + a2*z4 - a3*y4
1474 fy(4) = fy0 + a3*x4 - a1*z4
1475 fz(4) = fz0 + a1*y4 - a2*x4
1476 fskyi2(1,nn) = fx(4)
1477 fskyi2(2,nn) = fy(4)
1478 fskyi2(3,nn) = fz(4)
1487 dmast = dmast + 4.*xmsi - ms(i)
1488 IF (anim_n(2)+outp_n(2)+h3d_data%N_SCAL_DMAS >0)
THEN
1489 adm(j1) = adm(j1) + xmsi - fourth*ms(i)
1490 adm(j2) = adm(j2) + xmsi - fourth*ms(i)
1491 adm(j3) = adm(j3) + xmsi - fourth*ms(i)
1492 adm(j4) = adm(j4) + xmsi - fourth*ms(i)
1496 IF(idel2/=0.AND.ms(i)/=0.)smass(ii)=ms(i)
1499 IF(idel2/=0.AND.in(i)/=0.)siner(ii)=in(i)
1504 . irect(1,l),nir ,fsav ,fncont ,fncontp,
1505 . ftcontp ,weight ,h3d_data,i ,h)
1508 ELSEIF(weight(-i)==1)
THEN
1560 IF(anim_n(2)+outp_n(2)+h3d_data%N_SCAL_DMAS >0.AND.ilev==1)
THEN
1561#include "vectorize.inc"
1564 adm(j) = adm(j)/
max(mmass(ii),em20)
subroutine i2fomo3p(nsn, nmn, a, irect, dpara, msr, nsv, irtl, ms, weight, ar, in, x, stifn, stifr, fskyi2, iadi2, ilev, dmast, adm, mmass, i0, nir, i2size, idel2, smass, siner, v, crst, fsav, fncont, h3d_data, fncontp, ftcontp)
subroutine intti2f(ipari, x, v, a, vr, ar, ms, in, weight, stifn, stifr, fskyi2, iadi2, i2msch, dmast, adm, i0, nir, i2size, adi, igeo, bufgeo, fsav, fncont, nodnx_sms, dmint2, sav_for_pena, ms_pena, dt2t, neltst, ityptst, intbuf_tab, temp, fthe, ftheskyi2, condn, condnskyi2, itab, sav_iner_poff, h3d_data, t2fac_sms, fncontp, ftcontp, idt_therm, theaccfact)