33 1 NSN ,NMN ,A ,IRECT ,DPARA ,
34 2 MSR ,NSV ,IRTL ,MS ,WEIGHT ,
35 3 AR ,IN ,X ,STIFN ,STIFR ,
36 4 FSKYI2 ,IADI2 ,FSAV ,DMAST ,ADM ,
37 5 MMASS ,I0 ,NIR ,I2SIZE ,IDEL2 ,
38 6 SMASS ,SINER ,CRST ,FNCONT ,INDXC ,
39 7 IADX ,H3D_DATA,FNCONTP,FTCONTP )
47#include "implicit_f.inc"
51 INTEGER NSN, NMN, I0, NIR, I2SIZE, IDEL2,
52 . IRECT(4,*), MSR(*), NSV(*), IRTL(*), WEIGHT(*),
53 . IADI2(NIR,*),INDXC(*),IADX(*)
56 . A(3,*),AR(3,*), X(3,*),FSKYI2(I2SIZE,*),MMASS(*),
59 . fncontp(3,*) ,ftcontp(3,*)
60 TYPE (H3D_DATABASE) :: H3D_DATA
70 INTEGER I, J, K,,J2,J3,J4, II, L, JJ, NN,NISKY2,I0BASE
74 . S,T,SS, ST, XMSI, FS(3),SP,SM,TP,TM,
75 . MX,MY,MZ,DET,FX0,FY0,FZ0,INS,
76 . X0,X1,X2,X3,X4,XS,Y0,Y1,Y2,Y3,Y4,
77 . x12,x22,x32,x42,y12,y22,y32,y42,z12,z22,z32,z42,
78 . xx,yy,zz,xxx,yyy,zzz,xy,yz,zx,xy2,yz2,zx2,
79 . a1,a2,a3,b1,b2,b3,c1,c2,c3,mr,mrx,mry,mrz,inx,iny,inz,stf,fact,
92 IF(anim_n(2)+outp_n(2)+h3d_data%N_SCAL_DMAS >0)
THEN
95 adm(j) = adm(j)*mmass(ii)
144 x0=fourth*(x1+x2+x3+x4)
145 y0=fourth*(y1+y2+y3+y4)
146 z0=fourth*(z1+z2+z3+z4)
175 xx=x12 + x22 + x32 + x42
176 yy=y12 + y22 + y32 + y42
177 zz=z12 + z22 + z32 + z42
178 xy=x1*y1 + x2*y2 + x3*y3 + x4*y4
179 yz=y1*z1 + y2*z2 + y3*z3 + y4*z4
180 zx=z1*x1 + z2*x2 + z3*x3 + z4*x4
187 det= xxx*yyy*zzz - xxx*yz2 - yyy*zx2 - zzz*xy2
205 IF (weight(i)==1)
THEN
212 mx=ar(1,i) + ys*fs(3) - zs*fs(2)
213 my=ar(2,i) + zs*fs(1) - xs*fs(3)
214 mz=ar(3,i) + xs*fs(2) - ys*fs(1)
217 mx=ys*fs(3) - zs*fs(2)
218 my=zs*fs(1) - xs*fs(3)
219 mz=xs*fs(2) - ys*fs(1)
222 a1=det*(mx*b1+my*c3+mz*c2)
223 a2=det*(my*b2+mz*c1+mx*c3)
224 a3=det*(mz*b3+mx*c2+my*c1)
234 inx=ins + xmsi*(xs*xs+ys*ys+zs*zs)
238 mr=det*inx*
max(mrx,mry,mrz)
246 IF ((in(j1)>zero.AND.in(j2)>zero.AND.in(j3)>zero.AND.in(j4
THEN
252 xmsi=fourth*xmsi+mr*fact
254 IF (iroddl == 1)
THEN
255 stf = fourth*stifn(i)+ det*
max(mrx,mry,mrz)*(stifr(i)+stifn(i)*(xs*xs+ys*ys+zs*zs))
257 stf = fourth*stifn(i)+ det*
max(mrx,mry,mrz)*(stifn
260 i0 = i0base + iadx(k)
262 fx(1) = fx0 + a2*z1 - a3*y1
264 fz(1) = fz0 + a1*y1 - a2*x1
270 IF (iroddl == 1)
THEN
274 fskyi2(9,nn) = inx*fourth*(one-fact)
279 fx(2) = fx0 + a2*z2 - a3*y2
280 fy(2) = fy0 + a3*x2 - a1*z2
281 fz(2) = fz0 + a1*y2 - a2*x2
287 IF (iroddl == 1)
THEN
291 fskyi2(9,nn) = inx*fourth*(one-fact)
296 fx(3) = fx0 + a2*z3 - a3*y3
297 fy(3) = fy0 + a3*x3 - a1*z3
298 fz(3) = fz0 + a1*y3 - a2*x3
304 IF (iroddl == 1)
THEN
308 fskyi2(9,nn) = inx*fourth*(one-fact)
313 fx(4) = fx0 + a2*z4 - a3*y4
314 fy(4) = fy0 + a3*x4 - a1*z4
315 fz(4) = fz0 + a1*y4 - a2*x4
321 IF (iroddl == 1)
THEN
325 fskyi2(9,nn) = inx*fourth*(one-fact)
329 dmast = dmast + 4.*xmsi - ms(i)
331 IF (anim_n(2)+outp_n(2)+h3d_data%N_SCAL_DMAS >0)
THEN
332 adm(j1) = adm(j1) + xmsi - fourth*ms(i)
333 adm(j2) = adm(j2) + xmsi - fourth*ms(i)
334 adm(j3) = adm(j3) + xmsi - fourth*ms(i)
335 adm(j4) = adm(j4) + xmsi - fourth*ms(i)
339 IF(idel2/=0.AND.ms(i)/=0.)smass(ii)=ms(i)
344 IF(idel2/=0.AND.in(i)/=0.)siner(ii)=in(i)
351 . irect(1,l),nir ,fsav
352 . ftcontp ,weight ,h3d_data,i ,h)
355 ELSEIF(weight(-i)==1)
THEN
356 i0 = i0base + iadx(k)
363 IF (iroddl == 1)
THEN
376 IF (iroddl == 1)
THEN
390 IF (iroddl == 1)
THEN
403 IF (iroddl == 1)
THEN
416 IF(anim_n(2)+outp_n(2)+h3d_data%N_SCAL_DMAS >0)
THEN
417#include "vectorize.inc"
420 adm(j) = adm(j)/
max(mmass(ii),em20)
subroutine i2for28p_cin(nsn, nmn, a, irect, dpara, msr, nsv, irtl, ms, weight, ar, in, x, stifn, stifr, fskyi2, iadi2, fsav, dmast, adm, mmass, i0, nir, i2size, idel2, smass, siner, crst, fncont, indxc, iadx, h3d_data, fncontp, ftcontp)