question regarding stress calculation

Dear LAMMPS users:

In a LJ system (thus all quantities are represented in LJ units), I calculated the system’s stress components using the following commands:

compute speratom all stress/atom
compute sxx all reduce sum c_speratom[1]
compute syy all reduce sum c_speratom[2]
compute szz all reduce sum c_speratom[3]

I thought that the outputed c_szz divided by system volume should be equal to negative pzz (it’s a uni-axial tension process). However, it turned out that c_szz itself is equal to negative pzz. In other words, we don’t need to normalize c_szz by volume in LJ system? Based on my previous experience for real units, c_szz indeed needs to be divided by volume to generate the correct stress.

Shaorui

Dear LAMMPS users:

In a LJ system (thus all quantities are represented in LJ units), I
calculated the system's stress components using the following commands:

compute speratom all stress/atom
compute sxx all reduce sum c_speratom[1]
compute syy all reduce sum c_speratom[2]
compute szz all reduce sum c_speratom[3]

I thought that the outputed c_szz divided by system volume should be equal
to negative pzz (it's a uni-axial tension process). However, it turned out
that c_szz itself is equal to negative pzz. In other words, we don't need to
normalize c_szz by volume in LJ system? Based on my previous experience for
real units, c_szz indeed needs to be divided by volume to generate the
correct stress.

please note, that using reduced units changes the
default behavior of the calculation of thermodynamic
properties. using "units lj" activates "thermo_modify norm yes",
which is inactive in other cases unless explicitly
given in the input script.

cheers,
     axel.

Thank you so much, Axel.

Shaorui