33 2 N2,N3,NSTRF,X,V,FSAV,
35 4 FX,FY,FZ,TYPE,NSINT,IFRAM,
37 6 XSEC,FBSAV6,IPARSENS)
41#include "implicit_f.inc"
56 INTEGER LFT, LLT, NFT, NSEG, N1, N2, N3,
TYPE,NSINT
57 INTEGER NSTRF(2,*),IXT(NIXT,*),IFRAM,NNOD,NOD(*)
59 my_real X(3,*), FSAV(NTHVKI), FOPTA(6), SECFCUM(7,*),
60 . FX(MVSIZ,2), FY(MVSIZ,2), FZ(MVSIZ,2),
61 . v(3,*),ms(*),xsec(4,3)
62 DOUBLE PRECISION FBSAV6(12,6)
66 INTEGER JJJ(MVSIZ), UNPACK(3,2),
67 . nsa, j, i, k, i1, i2, ipack, n, jj
69 . fx1(mvsiz), fy1(mvsiz), fz1(mvsiz),
71 . dy1(mvsiz), dz1(mvsiz),fst(16),
72 . msx, msy, msz, xx1, yy1, zz1, xx2, yy2, zz2, xx3, yy3, zz3,
73 . xx4, yy4, zz4, xx5, yy5, zz5, xx6, yy6, zz6, xxn, yyn, zzn,
74 . d13, xxc, yyc, zzc, fsx, fsy, fsz, fn, fsnx, fsny, fsnz, fstx,
75 . fsty, fstz, dmx, dmy, dmz
77 . msxphi, msyphi, mszphi, fsxphi,
78 . fsyphi, fszphi, fnphi, fsnxphi, fsnyphi, fsnzphi, fstxphi,
79 . fstyphi, fstzphi, dmxphi, dmyphi, dmzphi
81 . xx1phi,xx3phi,xx4phi,xx5phi,xx6phi
83 . yy1phi,yy3phi,yy4phi,yy5phi,yy6phi
85 . zz1phi,zz3phi,zz4phi,zz5phi,zz6phi
87 . al4phi,al5phi,al6phi,xx5t,yy5t,zz5t
90 my_real,
DIMENSION(:,:),
ALLOCATABLE :: fstparit
96 IF(lft+nft>nstrf(1,nseg))
RETURN
97 IF(llt+nft<nstrf(1,1 ))
RETURN
112 IF(type+nsint==0)
THEN
119 ALLOCATE(fstparit(12,nsa))
129 2 xx4, yy4, zz4, xx5, yy5, zz5, xx6, yy6, zz6,
130 3 xxn, yyn, zzn,ifram,nnod,nod,ms)
133 2 xx5, yy5, zz5, xx6 , yy6 , zz6 ,
134 3 xxn, yyn, zzn, ifram, n1 , xsec)
143 IF(unpack(ipack,i1)/=0)
THEN
148 n = ixt(i1+1,nstrf(1,j))
157 fn=fsx*xxn+fsy*yyn+fsz*zzn
169 msx =dy1(k)*fz1(k)-dz1(k)*fy1(k)
170 msy =dz1(k)*fx1(k)-dx1(k)*fz1(k)
171 msz =dx1(k)*fy1(k)-dy1(k)*fx1(k)
173 dmx =msx*xx4+msy*yy4+msz*zz4
174 dmy =msx*xx5+msy*yy5+msz*zz5
175 dmz =msx*xx6+msy*yy6+msz*zz6
186 fst(10) = fst(10) + fsx
187 fst(11) = fst(11) + fsy
188 fst(12) = fst(12) + fsz
189 fst(13) = fst(13) + msx
190 fst(14) = fst(14) + msy
191 fst(15) = fst(15) + msz
193 . +fx1(k)*v(1,n)+fy1(k)*v(2,n)+fz1(k)*v(3,n)
204 IF(unpack(ipack,i1)/=0)
THEN
209 n = ixt(i1+1,nstrf(1,j))
218 fn=fsx*xxn+fsy*yyn+fsz*zzn
230 msx =dy1(k)*fz1(k)-dz1(k)*fy1(k)
231 msy =dz1(k)*fx1(k)-dx1(k)*fz1(k)
232 msz =dx1(k)*fy1(k)-dy1(k)*fx1(k)
234 dmx =msx*xx4+msy*yy4+msz*zz4
235 dmy =msx*xx5+msy*yy5+msz*zz5
236 dmz =msx*xx6+msy*yy6+msz*zz6
247 fst(10) = fst(10) + fsx
248 fst(11) = fst(11) + fsy
249 fst(12) = fst(12) + fsz
250 fst(13) = fst(13) + msx
251 fst(14) = fst(14) + msy
252 fst(15) = fst(15) + msz
254 . +fx1(k)*v(1,n)+fy1(k)*v(2,n)+fz1(k)*v(3,n)
256 fstparit(1,k)=fstparit(1,k)+fsnx
257 fstparit(2,k)=fstparit(2,k)+fsny
258 fstparit(3,k)=fstparit(3,k)+fsnz
259 fstparit(4,k)=fstparit(4,k)+fstx
260 fstparit(5,k)=fstparit(5,k)+fsty
261 fstparit(6,k)=fstparit(6,k)+fstz
262 fstparit(7,k)=fstparit(7,k)+msx
263 fstparit(8,k)=fstparit(8,k)+msy
264 fstparit(9,k)=fstparit(9,k)+msz
265 fstparit(10,k)=fstparit(10,k) +
266 . ( xx4*(fsnx+fstx) +
269 fstparit(11,k)=fstparit(11,k) +
270 . ( xx5*(fsnx+fstx) +
273 fstparit(12,k)=fstparit(12,k) +
274 . ( xx6*(fsnx+fstx) +
287 fsav(1)=fsav(1)+dt12*fst(1)
288 fsav(2)=fsav(2)+dt12*fst(2)
289 fsav(3)=fsav(3)+dt12*fst(3)
290 fsav(4)=fsav(4)+dt12*fst(4)
291 fsav(5)=fsav(5)+dt12*fst(5)
292 fsav(6)=fsav(6)+dt12*fst(6)
293 fsav(7)=fsav(7)+dt12*fst(7)
294 fsav(8)=fsav(8)+dt12*fst(8)
295 fsav(9)=fsav(9)+dt12*fst(9)
296 fsav(10)=fsav(10)+dt12*fst(16)
297 fsav(31)=fsav(31)+dt12*fst(13)
298 fsav(32)=fsav(32)+dt12*fst(14)
299 fsav(33)=fsav(33)+dt12*fst(15)
300 fsav(34)=fsav(34) + dt12* (xx4*(fst(1)+fst(4)) +
301 . yy4*(fst(2)+fst(5)) + zz4*(fst(3)+fst(6)))
302 fsav(35)=fsav(35) + dt12* (xx5*(fst(1)+fst(4)) +
303 . yy5*(fst(2)+fst(5)) + zz5*(fst(3)+fst(6)))
304 fsav(36)=fsav(36) + dt12* (xx6*(fst(1)+fst(4)) +
305 . yy6*(fst(2)+fst(5)) + zz6*(fst(3)+fst(6)))
309 fopta(1) = fopta(1) + fst(10)
310 fopta(2) = fopta(2) + fst(11)
311 fopta(3) = fopta(3) + fst(12)
312 fopta(4) = fopta(4) + fst(13)
313 fopta(5) = fopta(5) + fst(14)
314 fopta(6) = fopta(6) + fst(15)
315#include "lockoff.inc"
326 n = ixt(i1+1,nstrf(1,j))
327 secfcum(1,n)=secfcum(
328 secfcum(2,n)=secfcum(2,n)+fy(i,i1)
329 secfcum(3,n)=secfcum(3,n)+fz(i,i1)
333#include "lockoff.inc"
subroutine forint(timers, python, pm, geo, x, a, ar, v, vr, ms, in, w, elbuf, wa, val2, veul, fv, stifn, stifr, fsky, tf, bufmat, partsav, d, dr, eani, elbuf_tab, tani, fani, fsav, sensors, nloc_dmg, skew, anin, dt2t, bufgeo, itab, iads, iadq, iadt, iadp, mat_elem, iadr, iparg, ale_connect, npc, ixs, ixq, ixt, ixp, ixr, neltst, ipari, ityptst, nstrf, ipart, iparts, ipartq, ipartt, ipartp, ipartr, ipartur, fr_wave, rby, secfcum, agrav, igrv, lgrav, ixs10, ixs20, iads10, iads20, ixs16, iads16, w16, fskym, msnf, igeo, ipm, xsec, itask, temp, fthe, fthesky, igrounc, ngrounc, gresav, grth, igrth, xdp, mssa, dmels, mstr, dmeltr, msp, dmelp, msrt, dmelrt, table, vf, af, df, wf, ffsky, afglob, nbsdvois, nercvois, nesdvois, lercvois, lesdvois, phi1, phi2, msf, nodft, nodlt, flg_kj2, por, icontact, ifoam, sfem_nodvar, kxig3d, ixig3d, knot, wige, condn, condnsky, s_sfem_nodvar, tagprt_sms, itagnd, ms_2d, nale, stressmean, knotlocpc, knotlocel, subset, flag_slipring_update, flag_retractor_update, h3d_data, ifthe, icondn, dt, output, sbufmat, snpc, stf, nodadt, dtfac1, dtmin1, idtmin, iout, istdo, idtmins, dtfacs, nsvois, iresp, maxfunc, userl_avail, glob_therm, imon_mat, dtmins, sanin)