[lammps-users] Keeping overlapping atoms on the surface

Dear Axel,

Very recently you told me how to create random atoms on the surface of the cylinder. I am able to do that using the following commands.

region mycyl cylinder z 13 3 3 -15 98 units box side out
region outsideCylinder cylinder z 13 3 4 -27 100 units box side in
region myCylinder intersect 2 mycyl outsideCylinder

create_atoms 1 region myCylinder
create_atoms 2 random 40 769525 myCylinder
create_atoms 3 random 14 505132 myCylinder

group his type 1
group poly type 2
group poly1 type 3

delete_atoms overlap 0.1 his poly

I have created 14 atoms(type 3) on the intersect region. I deleted the overlapping atom type 2 with atom type 1 using the delete command. In addition, now I would like to

overlap the 14 atoms (that is atom type 3) with only 14 (type 2 atoms). Is there any command in LAMMPS that can do this by setting cut-off.
I have attached the image of the above.

Your kind suggestions on this please.


I think you are saying you want to add one new atom near specific selected atoms.
I can’t think of a way to do that in LAMMPS itself.

I suggest you create that kind of specialized geometry as a pre-processing step,
e.g. with a Python script, then write out the new atoms or the entire set of atoms
as a data file that LAMMPS can read in.

If you want LAMMPS to build the cylinder, you could do that, invoke your Python script
from within LAMMPS, then read the new small data file (added atoms) in LAMMPS
and proceed.


If you post your input script and data file, someone will be able to tell you what is wrong.