40 1 NIN ,IPARI ,INTBUF_TAB ,X ,V ,
41 2 A ,ITASK ,IGRNOD ,EMINX ,WAT ,
42 3 MS ,IADLL ,LLL ,JLL ,SLL ,
43 4 XLL ,N_MUL_MX ,IXS ,IXS16 ,IXS20 ,
44 5 NKMAX ,IXS10 ,COMNTAG ,IGRBRIC)
71#include "implicit_f.inc"
86 INTEGER NIN,ITASK ,N_MUL_MX ,NKMAX
87 INTEGER IPARI(NPARI,NINTER),
88 . IADLL(*) ,LLL(*) ,JLL(*) ,SLL(*) ,
89 . (NIXS,*) ,IXS16(8,*) ,IXS20(12,*) ,IXS10(6,*),
93 . x(3,*), v(3,*), a(3,*), ms(*),eminx(*),wat(*),
96 TYPE(intbuf_struct_) INTBUF_TAB(*)
97 TYPE (GROUP_) ,
DIMENSION(NGRNOD) :: IGRNOD
98 TYPE (GROUP_) ,
DIMENSION(NGRBRIC) :: IGRBRIC
102 INTEGER NSN,,NAD,EAD,
103 . nme_t,esh_t,ign,ige,multimp,noint,i,mx_cand,itri
106 . startt, stopt,xx,xy,xz,tzinf,minbox
112 noint = ipari(15,nin)
113 multimp = ipari(23,nin)
116 nsn =igrnod(ign)%NENTITY
117 nme =igrbric(ige)%NENTITY
120 startt = intbuf_tab(nin)%VARIABLES(3)
121 stopt = intbuf_tab(nin)%VARIABLES(11)
127 IF(itask==nthread-1)nme_t=nme-(nthread-1)*(nme/nthread)
129 intbuf_tab(nin)%XSLVG(1) = -ep30
130 intbuf_tab(nin)%XSLVG(2) = -ep30
131 intbuf_tab(nin)%XSLVG(3) = -ep30
132 intbuf_tab(nin)%XSLVG(4) = ep30
133 intbuf_tab(nin)%XSLVG(5) = ep30
134 intbuf_tab(nin)%XSLVG(6) = ep30
135 intbuf_tab(nin)%XMSRG(1) = -ep30
136 intbuf_tab(nin)%XMSRG(2) = -ep30
137 intbuf_tab(nin)%XMSRG(3) = -ep30
138 intbuf_tab(nin)%XMSRG(4) = ep30
139 intbuf_tab(nin)%XMSRG(5) = ep30
140 intbuf_tab(nin)%XMSRG(6) = ep30
147 1 x ,igrnod(ign)%ENTITY,igrbric(ige)%ENTITY ,nsn ,eminx ,
148 2 nme ,itask ,intbuf_tab(nin)%XSAV ,ixs ,ixs16 ,
149 3 ixs20 ,ixs10 ,v ,a ,intbuf_tab(nin)%XMSRG,
150 4 intbuf_tab(nin)%XSLVG )
156 tzinf = intbuf_tab(nin)%VARIABLES(4) *
SIZE / nme / 6
157 minbox = intbuf_tab(nin)%VARIABLES(5) *
SIZE / nme / 6
158 xx =
max(intbuf_tab(nin)%XSLVG(1)-intbuf_tab(nin)%XMSRG(4),
159 * intbuf_tab(nin)%XMSRG(1)-intbuf_tab(nin)%XSLVG(4))
160 xy =
max(intbuf_tab(nin)%XSLVG(2)-intbuf_tab(nin)%XMSRG(5),
161 * intbuf_tab(nin)%XMSRG(2)-intbuf_tab(nin)%XSLVG(5))
162 xz =
max(intbuf_tab(nin)%XSLVG(3)-intbuf_tab(nin)%XMSRG(6),
163 * intbuf_tab(nin)%XMSRG(3)-intbuf_tab(nin)%XSLVG(6))
165 IF(xx**2 + xy**2 + xz**2 >= tzinf**2)
THEN
174 1 igrnod(ign)%ENTITY,ixs ,ixs16 ,ixs20 ,igrbric(ige)%ENTITY ,
175 2 nme_t ,wat ,nsn ,intbuf_tab(nin)%CAND_E,intbuf_tab(nin)%CAND_N,
176 3 noint ,ipari(35,nin) ,tzinf ,minbox ,eminx ,
177 4 intbuf_tab(nin)%XSAV,itask ,x ,v ,a ,
178 5 mx_cand ,ixs10 ,esh_t)
187 1 x ,v ,lll ,jll ,sll ,
188 2 xll ,intbuf_tab(nin)%CAND_N,intbuf_tab(nin)%CAND_E,ipari(35,nin),ixs ,
189 3 iadll ,eminx ,igrnod(ign)%ENTITY,igrbric(ige
190 4 n_mul_mx ,itask ,a ,ipari(30,nin),
191 5 nin ,nkmax ,comntag )
193 1 x ,v ,lll ,jll ,sll ,
194 2 xll ,intbuf_tab(nin)%CAND_N,intbuf_tab(nin)%CAND_E,ipari(35,nin),ixs ,
195 3 ixs10 ,iadll ,eminx ,igrnod(ign)%ENTITY,igrbric(ige)%ENTITY,
196 4 n_mul_mx ,itask ,a ,ipari(30,nin),
197 5 nin ,nkmax ,comntag )
199 1 x ,v ,lll ,jll ,sll ,
200 2 xll ,intbuf_tab(nin)%CAND_N,intbuf_tab(nin)%CAND_E,ipari(35,nin),ixs ,
201 3 ixs16 ,iadll ,eminx ,igrnod(ign)%ENTITY,igrbric(ige)%ENTITY,
202 4 n_mul_mx ,itask ,a ,ipari(30,nin),
203 5 nin ,nkmax ,comntag )
205 1 x ,v ,lll ,jll ,sll ,
206 2 xll ,intbuf_tab(nin)%CAND_N,intbuf_tab(nin)%CAND_E,ipari(35,nin),ixs ,
207 3 ixs20 ,iadll ,eminx ,igrnod(ign)%ENTITY,igrbric(ige)%ENTITY,
208 4 n_mul_mx ,itask ,a ,ipari(30,nin),
209 5 nin ,nkmax ,comntag )
subroutine i16main(nin, ipari, intbuf_tab, x, v, a, itask, igrnod, eminx, wat, ms, iadll, lll, jll, sll, xll, n_mul_mx, ixs, ixs16, ixs20, nkmax, ixs10, comntag, igrbric)