+ while(neighbour[j][p]!=0) {
+
+ jtom=&(moldyn->atom[neighbour[j][p]]);
+ p++;
+#else
+ this=&(neighbour[j]);
+ list_reset_f(this);
+
+ if(this->start==NULL)
+ continue;
+
+ do {
+
+ jtom=this->current->data;
+#endif
+ /* only count pairs once,
+ * skip same atoms */
+ if(itom[i].tag>=jtom->tag)
+ continue;
+
+ /*
+ * pair correlation calc
+ */
+
+ /* distance */
+ v3_sub(&dist,&(jtom->r),&(itom[i].r));
+ if(bc) check_per_bound(moldyn,&dist);
+ d=v3_absolute_square(&dist);
+
+ /* ignore if greater or equal cutoff */
+ if(d>=moldyn->cutoff_square)
+ continue;
+
+ /* fill the slots */
+ d=sqrt(d);
+ s=(int)(d/dr);
+
+ /* should never happen but it does 8) -
+ * related to -ffloat-store problem! */
+ if(s>=slots) s=slots-1;
+
+ if(ibrand!=jtom->brand) {
+ /* mixed */
+ stat[s]+=1;
+ }
+ else {
+ /* type a - type a bonds */
+ if(ibrand==0)
+ stat[s+slots]+=1;
+ else
+ /* type b - type b bonds */
+ stat[s+o]+=1;
+ }
+#ifdef STATIC_LISTS
+ }
+#else
+ } while(list_next_f(this)!=L_NO_NEXT_ELEMENT);
+#endif
+ }