40 1 NIN ,IPARI ,INTBUF_TAB,X ,
42 3 IADLL ,LLL ,JLL ,SLL ,XLL ,
43 4 N_MUL_MX ,NKMAX ,ITAB ,INDEX2 ,NB_JLT ,
44 5 NB_JLT_NEW,NB_STOK_N ,NEWFRONT,ICONTACT,ITAG ,
45 6 XTAG ,COMNTAG ,KINET )
72#include "implicit_f.inc"
88 INTEGER NIN,ITASK ,N_MUL_MX ,NKMAX ,
89 . NB_JLT,NB_JLT_NEW,NB_STOK_N,
90 INTEGER IPARI(NPARI,NINTER), KINET(*),
91 . IADLL(*) ,LLL(*) ,JLL(*) ,SLL(*) ,ICONTACT(*),
92 . ITAB(*), INDEX2(*), ITAG(*), COMNTAG(*)
95 . x(3,*), v(3,*), a(3,*), ms(*),
98 TYPE(intbuf_struct_) INTBUF_TAB(*)
102 INTEGER I_STOK_GLOB,NSN,NME,NAD,EAD,
103 . NME_T,ESH_T,IGN,IGE,MULTIMP,NOINT,I,MX_CAND,NTY,IVIS2,
104 . igap,inacti,ibag,i_stok, i_stok_loc, jlt_new,
105 . jlt, nft,debut,nbid,nb_loc,jtask, igsti,icurv,iadm
106 INTEGER IX1(MVSIZ), IX2(MVSIZ), IX3(MVSIZ), IX4(MVSIZ),
107 . NSVG(MVSIZ), CN_LOC(MVSIZ),CE_LOC(MVSIZ),
108 . cand_n_n(mvsiz),cand_e_n(mvsiz),kini(mvsiz),ibid
111 . startt, stopt,gap,gapmin,maxbox,minbox,bid,
114 . nx1(mvsiz), nx2(mvsiz), nx3(mvsiz), nx4(mvsiz),
115 . ny1(mvsiz), ny2(mvsiz), ny3(mvsiz), ny4(mvsiz),
116 . nz1(mvsiz), nz2(mvsiz), nz3(mvsiz), nz4(mvsiz),
117 . lb1(mvsiz), lb2(mvsiz), lb3(mvsiz), lb4(mvsiz),
118 . lc1(mvsiz), lc2(mvsiz), lc3(mvsiz), lc4(mvsiz),
119 . p1(mvsiz), p2(mvsiz), p3(mvsiz), p4(mvsiz),
120 . x1(mvsiz), x2(mvsiz), x3(mvsiz), x4(mvsiz),
121 . y1(mvsiz), y2(mvsiz), y3(mvsiz), y4(mvsiz),
122 . z1(mvsiz), z2(mvsiz), z3(mvsiz), z4(mvsiz),
123 . xi(mvsiz), yi(mvsiz), zi(mvsiz), stif(mvsiz),
124 . n1(mvsiz), n2(mvsiz), n3(mvsiz), pene(mvsiz),
125 . h1(mvsiz), h2(mvsiz), h3(mvsiz), h4
126 . gapv(mvsiz),vxi(mvsiz),vyi(mvsiz),vzi(mvsiz),msi(mvsiz)
128 . nnx1(mvsiz), nnx2(mvsiz), nnx3(mvsiz), nnx4(mvsiz),
129 . nny1(mvsiz), nny2(mvsiz), nny3(mvsiz), nny4(mvsiz),
130 . nnz1(mvsiz), nnz2(mvsiz), nnz3(mvsiz), nnz4(mvsiz),
137 IF(ipari(33,nin)==0)
RETURN
141 DO i = itask+1,numnod,nthread
164 startt=intbuf_tab(nin)%VARIABLES(3)
165 stopt =intbuf_tab(nin)%VARIABLES(11)
168 gap =intbuf_tab(nin)%VARIABLES(2)
169 gapmin=intbuf_tab(nin)%VARIABLES(13)
173 i_stok = intbuf_tab(nin)%I_STOK(1)
174 maxbox = intbuf_tab(nin)%VARIABLES(9)
175 minbox = intbuf_tab(nin)%VARIABLES(12)
176 gapmax=intbuf_tab(nin)%VARIABLES(16)
177 kmin =intbuf_tab(nin)%VARIABLES(17)
178 kmax =intbuf_tab(nin)%VARIABLES(18)
182 drad = intbuf_tab(nin)%VARIABLES(32)
187 nb_loc = i_stok / nthread
188 IF (jtask==nthread)
THEN
189 i_stok_loc = i_stok-nb_loc*(nthread-1)
193 debut = (jtask-1)*nb_loc
196 IF (inacti==5.OR.inacti==6)
THEN
197 DO i = debut+1, debut+i_stok_loc
198 IF(intbuf_tab(nin)%CAND_N(i)<0)
THEN
200 IF(i_stok + 1>4*numnod)
THEN
201 CALL ancmsg(msgid=97,anmode=aninfo)
208 intbuf_tab(nin)%CAND_N(i) = -intbuf_tab(nin)%CAND_N(i)
211 intbuf_tab(nin)%CAND_P(i) = zero
215 DO i = debut+1, debut+i_stok_loc
216 IF(intbuf_tab(nin)%CAND_N(i)<0)
THEN
218 IF(i_stok + 1>4*numnod)
THEN
219 CALL ancmsg(msgid=97,anmode=aninfo)
226 intbuf_tab(nin)%CAND_N(i) = -intbuf_tab(nin)%CAND_N(i)
231 IF (debug(3)>=1)
THEN
232 nb_jlt = nb_jlt + i_stok_loc
233 nb_stok_n = nb_stok_n + i_stok
236 DO nft = 0 , i_stok - 1 , nvsiz
237 jlt =
min( nvsiz, i_stok - nft )
240 1 jlt,index2(nft+1),intbuf_tab(nin)%CAND_E,intbuf_tab(nin)%CAND_N,
244 1 jlt ,x ,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,
246 2 cand_n_n ,intbuf_tab(nin)%STFM,intbuf_tab(nin)%STFNS,x1 ,x2 ,
247 3 x3 ,x4 ,y1 ,y2 ,y3 ,
248 4 y4 ,z1 ,z2 ,z3 ,z4 ,
249 5 xi ,yi ,zi ,stif ,ix1 ,
250 6 ix2 ,ix3 ,ix4 ,nsvg ,igap ,
251 7 gap ,intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_M,gapv,
253 a vzi ,msi ,nsn ,v ,kinet ,
254 b kini ,nty ,nin ,igsti ,kmin ,
255 c kmax ,gapmax ,gapmin ,iadm ,bid ,
256 d bid ,bid ,bid ,ibid ,bid ,
257 e bid ,bid ,bid ,ibid ,bid ,
258 f ibid ,ibid ,ibid ,intbuf_tab(nin)%GAP_SL,
259 . intbuf_tab(nin)%GAP_ML,
260 g ibid ,ibid ,ibid ,ibid ,ibid ,
261 h ibid ,ibid ,bid ,ibid ,bid )
264 1 jlt ,cand_n_n,cand_e_n,cn_loc, ce_loc,
265 2 x1 ,x2 ,x3 ,x4 ,y1 ,
266 3 y2 ,y3 ,y4 ,z1 ,z2 ,
267 4 z3 ,z4 ,xi ,yi ,zi ,
268 5 nx1 ,nx2 ,nx3 ,nx4 ,ny1 ,
269 6 ny2 ,ny3 ,ny4 ,nz1 ,nz2 ,
270 7 nz3 ,nz4 ,lb1 ,lb2 ,lb3 ,
271 8 lb4 ,lc1 ,lc2 ,lc3 ,lc4 ,
272 9 p1 ,p2 ,p3 ,p4 ,ix1 ,
273 a ix2 ,ix3 ,ix4 ,nsvg ,stif ,
274 b jlt_new,gapv ,inacti ,intbuf_tab(nin)%CAND_P,
275 c index2(nft+1),vxi ,vyi ,
276 d vzi ,msi ,kini ,icurv ,intbuf_tab(nin)%IRECTM,
277 e nnx1 ,nnx2 ,nnx3 ,nnx4 ,nny1 ,
278 f nny2 ,nny3 ,nny4 ,nnz1 ,nnz2 ,
279 g nnz3 ,nnz4 ,bid ,iadm ,bid ,
280 h bid ,ibid ,bid ,bid ,bid ,
281 i ibid ,ibid ,cmaj ,drad2 ,
283 k ibid ,ibid ,ibid ,intbuf_tab(nin)%CAND_F,
291 . nb_jlt_new = nb_jlt_new + jlt_new
292 CALL i7lagm(lll,jll,sll ,xll ,iadll ,
293 2 n_mul_mx,itask ,nin ,nkmax ,
294 3 jlt ,a ,v ,itag ,xtag ,
295 4 gap ,noint ,intbuf_tab(nin)%STFNS,itab ,cn_loc ,
296 5 nx1 ,nx2 ,nx3 ,nx4 ,ny1 ,
297 6 ny2 ,ny3 ,ny4 ,nz1 ,nz2 ,
298 7 nz3 ,nz4 ,lb1 ,lb2 ,lb3 ,
299 8 lb4 ,lc1 ,lc2 ,lc3 ,lc4 ,
301 a ix1 ,ix2 ,ix3 ,ix4 ,nsvg ,
302 b gapv ,newfront,ibag ,icontact,stif ,
subroutine i7lagm(lll, jll, sll, xll, iadll, n_mul_mx, itask, nint, nkmax, jlt, a, v, itag, xtag, gap, noint, stfn, itab, cn_loc, nx1, nx2, nx3, nx4, ny1, ny2, ny3, ny4, nz1, nz2, nz3, nz4, lb1, lb2, lb3, lb4, lc1, lc2, lc3, lc4, p1, p2, p3, p4, ix1, ix2, ix3, ix4, nsvg, gapv, newfront, ibag, icontact, stif, comntag, iadm)