-deform <x|y|z> <ε> [<ν>]
-deform <xy|xz|yz|yx|zx|zy> <ε>
This option allows to deform a system (box and atoms), by applying uniaxial strain or shear strain.
The user has to provide the component of deformation, the value of the applied strain, and optionally, the Poisson's ratio of the material. The program deforms the material in the given direction according to the applied strain, and deforms it in the other directions according to Poisson's ratio. The command-line parameters of importance are:
If the component is 'x', 'y' or 'z', the transformation will result in uniaxial strain. If a value is provided for Poisson's ratio, then the other directions will be deformed according to it, which should result in uniaxial stress, i.e. the stress should be non-zero only along the given direction. To apply the same deformation in all directions, set the Poisson's ratio value to -1. This can be useful, for instance, to deform a system according to its thermal expansion coefficient α, in which case one should use ε=αT, where T is the target temperature. To apply an anisotropic deformation one can use this option three times along the three axes, using ν=0 and different values of ε (see example 3 below).
If the component is 'xy', 'xz', 'yz', 'yx', 'zx', or 'zy', then the transformation will result in shear strain. In this case it is not possible to provide a Poisson ratio. If instead of a numerical value, <ε> is replaced by the keyword "untilt", then the corresponding tilt component will become zero.
If a selection was defined (with the option -select
) then the deformation applies only to selected atoms, and the box is not deformed.
To apply stress, refer to option -stress
.
By default the system is not deformed at all.
atomsk initial.cfg -deform x 0.06 final.xyz
This will elongate the system initial.cfg
by ε=6% along X (uniaxial strain). The result will be output into final.xyz
.
atomsk initial.cfg -deform x 0.06 0.3 final.xyz
This will elongate the system initial.cfg
by ε=6% along X, applying a Poisson's ratio of 0.3 along the other axes; this is equivalent to uniaxial stress. The result will be output into final.xyz
.
atomsk initial.cfg -def y 2.5% 0.0 final.xyz
This will apply an uniaxial strain (Poisson's ratio is 0) of 2.5% along Y to the system unitcell.cfg
. The result will be output into final.xyz
.
atomsk initial.cfg -def x 1% 0 -def y -0.76% 0 -def z -0.73% 0 final.xyz
This example uses the option "-deform" three times to apply different deformations along the three axes (Poisson's ratio is always zero). This is equivalent to anisotropic axial deformation.
atomsk initial.cfg -def x 0.003 -1 final.xyz
This will apply a tension of 0.3% in all directions, thus mimicking the effects of a thermal expansion coefficient α=10-5 K-1 at a temperature T=300 K.
atomsk initial.cfg -def yx 3% final.xyz
This will tilt the second box vector by 3% along X, resulting in shear strain.