Could I replicate the unit cell by automatically arranging the order of Atom along the specific axis

Hi all

I like to make supercell and assign the displacement and velocity to the atoms

but, to do so , i confirmed that i should make group the atoms to assign theses properties

In my case, I want to assign the same properties to atoms in same unitcell in the supercell depending on the position of unicell along the c axis.

but, when i did replicate to make supercell, the data info by write_data looks being described as freely

I could not find any rule that arrange the order of atom in the structure info.

Are there any method to make a group of atoms in same unitcell when i make supercell ?

and can I assign the displcement and velocity to each atom, not the group?

Any comments will be helpful


There is no option to reorder atoms in a data file.
This is not available because of the additional complexity of code it would require on top of an already complex code and because it would have a significant negative performance impact for large problems (note the meaning of the ā€œLā€ in LAMMPS).

However, there is nothing stopping you from post-processing the Atoms and Velocity sections of a data file after the fact and sort them by atom ID.

When using the replicate command, it is not possible to later identify which individual replica an atom belongs to. Again, you can do an assignment in post-processing based on atom position and then also use that information later to modify per-atom properties.

Overall, this sounds like you should perhaps look into using a more sophisticated tool for preparing your initial geometry than LAMMPS itself. There are several listed here:

1 Like

Thanks so much

I understand!

I need postprocessing and also required to find the other tools