[lammps-users] preserving volume with fix deform


I’m new to LAMMPS and am trying to run a test problem to get familiar with the commands.
I’ve got a simple cubic lattice of atoms connected by a harmonic potential and am applying a uniaxial strain (in the x direction).

I’d like to adjust the y and z deformations to conserve volume but if I use the volume option in fix deform the domain collapses to a line
after one time step. My work around is to manually enter y and z deformations or strain rates to enforce volume conservation but I’m wondering
why the volume option does not work for this problem?

Here is contents of my input file and I’ve attached the data file containing atom positions and the bond list.

uniaxial strain test

boundaryp p p

read_data simple.dat

bond_coeff1 1.0 2.0

thermo_style custom step temp ebond lx ly lz pxx pyy pzz pxy pxz pyz
thermo 1

uniaxial extension with constant volume constraint (fails after one step)

#fix 1 all deform 1 x final -8.05 8.05 y volume z volume remap x units box

extension w/ constant volume work-around

fix 1 all deform 1 x final -8.05 8.05 y final -7.97511658 7.97511658 z final -7.97511658 7.97511658 remap x units box

timestep 1.0
dump 1 all atom 1 dump.coor

run 10000

Thanks for you help.


simple.dat (71.8 KB)

Are you running the current (fully patched) version of LAMMPS?

The attached script (only slightly modified) runs fine on my
box, in serial or parallel. Resulting log file is also attached.


in.bug (613 Bytes)

log.lammps (8.89 KB)