[lammps-users] How to apply shear stress

Dear All:

I want to apply shear stress on a system with a dislocation in it. It seems to be several ways to realize it. For simplification, I suppose the system is isotropic elasticity. Thus I can turn the stress into the equivalent strain, and then in turn to be the displacements of the outermost atoms. By doing so, I can add such displacements in data file or use command “displace_atoms”.

Another way is to use command “fix/addforce” to do the same thing. Here I get confuse that whether “fix/addforce” or “fix/setforce”. I prefer the former. Because I want to minimize the total energy of the whole system under zero temperature, thus the shear stress just means there is some extra force on some boundary atoms, and by minimization, the total force on those atoms can be reduced.

On the other hand, if I use “fix/setforce”, I cannot expect that those atoms can get to their equilibrium positions because they always feel the forces which are set by “fix/setforce”.

Based on those consideration, I think even for the dynamical simulation under finite temperature, I should use “fix/addforce” or “displace_atoms” instead of “fix/setforce”. Am I right? or is there better way to apply an external shear stress on a system?

Yours Sincerely

In addition to what you suggest, you can look at the examples/shear
input scripts which apply shear by dragging boundary atoms around.

To do this in bulk, you could use the fix deform command.