129. 1-----< do i=1,maxi
130. 1 xi = x(3*i-2)
131. 1 yi = x(3*i-1)
132. 1 zi = x(3*i )
133. 1 qi = charge(i)
134. 1 iaci = ntypes * (iac(i) - 1)
135. 1 jexcl = iexcl
136. 1 jexcl_last = iexcl + numex(i) -1
137. 1 nexcl = natex( jexcl )
138. 1 if( jexcl .gt. jexcl_last ) nexcl = 0
139. 1 dumx = 0.0d0
140. 1 dumy = 0.0d0
141. 1 dumz = 0.0d0
142. 1 c
143. 1 skipv(i+1:natom)=.false.
144. 1 Vr--< do jj=jexcl,jexcl_last
145. 1 Vr skipv(natex(jj))=.true.
146. 1 Vr--> enddo
147. 1 nkeep=0
148. 1 2---< do j=i+1,natom
149. 1 2 xij = xi - x(3*j-2)
150. 1 2 if( abs(xij) .gt. cutxyz ) go to 2001
151. 1 2 yij = yi - x(3*j-1)
152. 1 2 if( abs(yij) .gt. cutxyz ) go to 2001
153. 1 2 zij = zi - x(3*j )
154. 1 2 if( abs(zij) .gt. cutxyz ) go to 2001
155. 1 2 c
156. 1 2 r2 = xij*xij + yij*yij + zij*zij
157. 1 2 if( r2.gt.cut ) go to 2001
158. 1 2 nkeep=nkeep+1;keepj(nkeep)=j
159. 1 2 2001 continue
160. 1 2---> enddo
161. 1 if(igb.eq.1)then
162. 1 cdir$ ivdep
163. 1 V---< do 200 jj=1,nkeep
164. 1 V j=keepj(jj)
Remove recurrence
from nexcl
Previous slide | Next slide | Back to first slide | View graphic version |