[lammps-users] about MEAM source code

Steve and all,

I am trying to implement 2nn MEAM potential in lammps. Prior to do that, I’ve checked the original MEAM version and I discovered the neighbor list of atoms is even not correct. Specifically some of neighbor list in firstneigh_half[] are out of atom numbers, which does not make sense. I understand that the tricky is probably from the different array index for Fortran and C. I’m hoping you can give me some hints on this weird error. I understand the building of neighbor list is trigged by neighbor-request in PairMEAM::init_style(). I just want to make sure when the force cutoff will be reading from the potential files? After the MEAM parameters are set? I have to say I’ve not quite understood the entire structure of lampps. But I do want to learn it in detail and I know it is not easy.

For now, could you check with me why this happened? I can send you my files and results if you wish.

Thank you very much!

Cheers,

Ajing

I don't know what "out of atom numbers" means. What is stored
in the neighbor list is indices of atoms, which range (in C) from
0 to N-1, where N = nlocal + nghost. Nlocal are the atoms this
proc owns, nghost are its ghost atoms. There is a translation
from C to Fortran indices for the MEAM lib which is in Fortran.
But that is just a +1,-1 kind of thing.

Steve