Atomic stress distribution

Dear LAMMPS users,

I have a conceptual question about post-processing of the MD simulation results. As for the unit lattice of an arbitrary material in its minimized situation, what can we comment on the histogram of atomic stress tensor components such as Stress-XX for example ? I understand that the summation of the per atom stress divided by the box volume is resulted overall stress and thus at equilibration, this summation should be close to zero. But, can we have any general comment on the distribution too or it is dependent to the potential ? Please note that by stress, I mean the negative value of Pxx, Pyy, …, Pyz


Hi Ali, atomic stress (I assume this is from compute stress/atom) is accumulated onto the point positions of the atoms (see the doc for details), so it will be zero everywhere except where the atoms are located. If the system is not homogeneous, there will be regions of consistently higher or lower density, e.g. across an interface you may get a region where there are no atoms and thus no stress, leading to the counter-intuitive result that there is no stress across the interface itself. A stress profile across such an interface will have only a limited, qualitative value. This is due to the problem of defining a continuum-mechanics property from discrete atomic positions.

If by “histogram” you didn’t mean a profile along the unit cell, but just the distribution of stress values, you could simply consider that the total stress of the system is just the average of many contributions, one for each atom. It is quite obvious to see that the fluctuations of the individual contributions is larger than that of their average. By how much and with what shape, it depends on your system.


I agree with what Giacomo has said. I will add that, as a special case, for a completely ordered crystal at zero pressure and zero temperature, the per atom stress tensor must be zero for all atoms, if they are all equivalent. However, even with a single element in a perfect crystal, but with two distinct basis atoms e.g. cubic diamond silicon or carbon, it is possible to have non-zero stress tensors for the two atoms that sum to zero. And yes, the values of the stess tensor components will be quite sensitive to the interatomic potential. For non-zero temperature, it is only when you average over a suitably large volume (and also perhaps time), that these strong local, possibly unphysical, contributions can be averaged out, allowing the real physical variations in stress to emerge. I should also point out that there is a large body of literature on alternate methods for computing local stress, see for example, the ATC package in LAMMPS.

Dear Giacomo and Aidan,

Thanks for your through explanation, I enjoyed reading it.

Giacomo: It was nice to employ continuum point of view to discuss the problem. As for the fluctuation, what I got using three different potentials showed that the fluctuation has distinguishable pattern for each of the potential. I was curious if one of them makes more sense or not assuming all the potential reproduces several experimental and DFT data correctly.

Aidan: Very good example on the possibility of non-zero per atom stress ! I was thinking if we should expect to have zero value for all the atoms or it is still correct if a couple of them are let’s say positive and the rest are negative and thus the overall is zero ( i.e. Gaussian distribution with zero mean ) which you made it clear. Of course it is the case where I have more than one basis atoms.