Displacement of atoms

Dear LAMMPS users,

I am trying to simulate a collision cascade with a uranium atom. I was trying to calculate how many atoms are in the cascade and this is by checking how many atoms were displaced with more than 2 Ang, my problem is when I used compute displace/atom, all atoms were displaced with large numbers despite that the radiation effect was localized in the center of the supercell only. In addition to that, when I checked the atom coordinated in the equilibration section (before irradiation), the atoms were also displaced by high values (more than the equilibrium distance).

Am I understanding the displacement concept wrongly? isn’t it the vector whose length is the shortest distance from the initial to the final position of a point and it can be used to detect the if an atom is a part of a collision cascade or not? or is it all about coordinates the lammps is using to calculate the displacement?

I viewed my system and there is no amorphization and the disturbance is cell centered localized…

I hope if you can help and thank you in advance…

*****Computing the displacement of atoms *****

compute disp all displace/atom
fix 9 all store/state 1 c_disp[4]

dump disp all custom 100 disp.dat type id mass xu yu zu c_disp[4]


Why are you making a difference between the “vector” and the “coordinates”? Is the vector you calculate not directly based on the coordinates? Here, I see that your problem is that you already measure a displacement before the cascade. That’s mean your are doing something to your system you don’t expect. Are you thermalizing it? you will have thermal expansion, and then displacement. Are you relaxing it? You will have surface relaxation, and then displacement. Maybe define the compute just before running the cascade? Also, in the 3 lines you provided, the fix is not used. Why is it here? Julien.