Too many neighbors for some atoms

Hello Lammps Users,

I am running a case of two cupper crystals having two Gr layers in between the Cu crystals. I have defined atom types equal 1 for Cu, 2 for the first Gr layer and 3 for the second Gr layer. The interaction step was defined as shown below,

pair_style hybrid/overlay airebo 3.4 0 0 lj/cut 10.0 eam ilp/graphene/hbn 16.000000 1
pair_coeff * * airebo CH.airebo NULL C C
pair_coeff 1 2 lj/cut 0.02578 3.0825 10.0
pair_coeff 1 3 lj/cut 0.02578 3.0825 10.0
pair_coeff 1 1 eam Cu_u3.eam.in
pair_coeff * * ilp/graphene/hbn BNCH.ILP NULL C C

A data file was created and read by the input file using the “full” category:
atom-ID molecule-ID atom-type q x y z.

I am getting an Error message of " There are too many neighbors for some atoms, please check your configuration", any suggestions to solve this issue?

Best Regards,

1 Like

Hi @R.M.H.1,

You are giving the definition the interactions you’re using but the error indicates a problem related to the neighbors of your atoms, likely an overflow of the neighbors list. The message is explicit: there appears to be something wrong with how your built your initial configuration. You should maybe look for unexpected structure in it or check that the units you used match the units LAMMPS used.

You might also be interested in looking in the manual for the neighbor and neigh_modify commands as a last resource, and play with the parameter to see if they are of any use. But if the default parameters did not work at all, it is not likely to be the 1st place to look for your issue.

At the moment there are too few information to give more insightful help.

When reporting an error, please always report the exact LAMMPS version you are using and the platform you are running on. Please also copy the entire error message, which will contain a source file name and a line number.

I cannot easily search the source myself right now, but if memory serves me well, this error is printed by the interlayer potential. If yes, this means that - as the error message indicates - your geometry does not follow the requirements of that potential. For example you may not have assigned molecule IDs in the required way.

As I took part in the topic I got a quick look at the source and the error message is indeed printed by pair_ilp_graphene_hbn. But this message is not referenced in the Error Message list of the manual.

If it was, the description would likely say “self-explanatory”

The LAMMPS developers have decided to retire this list (the raw data in the class header file is already gone) and instead produce more descriptive error messages when possible and for difficult cases a URL to a dedicated paragraph in the manual. However this process is still in infancy and we are looking for volunteers to help with it. I was planning to make an announcement to that effect after I am returned and recovered from my current trip to Europe.

2 Likes

Hi Germain,
I tried running the same case using a different interaction step, by disregarding the interlayer interaction:
pair_style hybrid airebo 3.4 0 0 lj/cut 10.0 eam
pair_coeff * * airebo CH.airebo NULL C C
pair_coeff 1 2 lj/cut 0.02578 3.0825 10.0
pair_coeff 1 3 lj/cut 0.02578 3.0825 10.0
pair_coeff 1 1 eam Cu_u3.eam.in
neighbor 2.0 nsq
neigh_modify delay 0 every 1 check yes

This case runs without any issues related to the atom neighbors and gives an indication that the atomic structure has no issues. This case basically ignores the Gr Gr interaction.

Dear Sir,
I think I have provided incomplete error message previously. The complete error message is:

ERROR on proc 0: There are too many neighbors for some atoms, please check your configuration (src/INTERLAYER/pair_ilp_graphene_hbn.cpp:672)
Last command: minimize 1e-40 1e-40 5000 5000

I am using OMP serial version of LAMMPS (7 Jan 2022) . The interlayer potential file is BNCH-old.ILP of W. Ouyang et al 2018.

As I already wrote this indicates that your input geometry does not conform to the requirements of the interlayer pair style. You need to study its documentation to see what these are and update your data file accordingly.

As also mentioned before, the error message is pretty self-explanatory. There is no “magic” input flag or command that turn a bad input data into good one.

Dear all,

I have also small question regarding this topic. I had also this problem before when I used hBN or graphene with some long alkane chains, despite the fact that I expressed different layers with different molecule identifiers. The solution I came up with is changing r_cut values in the potential file (BNCH.ILP). In potential file there are two additional parameters, S and r_cut, which are designed for scaling units and building neighbor list respectively. In my molecule (alkane) the C-H bond length is approximately 1.07 A. If I change r_cut for this pair interaction to the 1.0 A (smaller value than bond length), it works, it seems like if this r_cut is bigger than bond length, it will just crash and give error. But, for long time simulation, it still gives this error message after some successfull steps (There are too many neighbors for some atoms, please check your configuration (src/INTERLAYER/pair_ilp_graphene_hbn.cpp:692)).
Here is the question: is it safe to change this value or does it have any effect to the accuracy of the calculation? What exactly does it control?

Thank you in advance.

Best regards,
Tolib.

These are questions for the developer of the pair style and potential parameters.
You are also not mentioning which exact version of LAMMPS you are using. Perhaps this behavior is due to a bug that has since been resolved. Other than that, it is an indication that your input geometry is not suitable for the potentials and possibly unphysical. It is impossible to make an accurate assessment of the situation with only vague information.

In general, it is very bad idea to change parameters when you don’t understand what they are doing. You most certainly will create a new parameterization and thus will have to re-do the validation of the potential.