Dear community,

in any pair potential style there is a loop over nearestneigbors.

to get the idea of what is happening I have run lammps in serial on a one core and put out the correspondent indices in the double loop for the force calculation in the function compute (the output is attached).

as I assumed index i has values in the range 0 <= i < N, where N=512 is the total number of atoms.

but index j is sometimes the way higher that N. Why does it happen?

It looks to me strange because there are the line of code

delx = xtmp - x[j][0];

dely = ytmp - x[j][1];

delz = ztmp - x[j][2];

where index j is directly used to get the particle coordinates from array atom->x, which is a local array. and when we do not run lammps in paralel there should not be ghost atoms and this is why the size of atom->x should be nlocal which for a single processor in my case is N=512, is this right?

Thank you!

Anton

output_indices_i_j_from_compute (549 KB)

Dear community,

in any pair potential style there is a loop over nearestneigbors.

to get the idea of what is happening I have run lammps in serial on a one

core and put out the correspondent indices in the double loop for the force

calculation in the function compute (the output is attached).

as I assumed index i has values in the range 0 <= i < N, where N=512 is the

total number of atoms.

but index j is sometimes the way higher that N. Why does it happen?

because of ghost atoms.

It looks to me strange because there are the line of code

delx = xtmp - x[j][0];

dely = ytmp - x[j][1];

delz = ztmp - x[j][2];

where index j is directly used to get the particle coordinates from array

atom->x, which is a local array. and when we do not run lammps in paralel

there should not be ghost atoms and this is why the size of atom->x should

be nlocal which for a single processor in my case is N=512, is this right?

no. LAMMPS will create ghost atoms from periodic replica until you

reach the cutoff plus "skin" distance. thus it is not subject to

minimum image conventions and the number of ghost atoms can by far

exceed the number of local atoms.

axel.