[lammps-users] temperature with spring/self

Hello Fellow Lammps-Users,

I am working with a system in which 2/3 of the particles are restrained with spring/self to make a wall. I apply npt fix to all the particles, and i noticed that the average is right but the wall is much colder than liquid inside. I presume that is because the spring/self is added on top of the normal npt dynamics, but the target temperature is measured with the real velocities. Is there a way to enforce the temperature in each of the two groups?

I am attaching the data, input and force field (SW) parameter file, and the log.lammps showing in column 2 the total temperature, in column 16 the temperature of the free particles and in column 17 the one of the one restrained with the spring/self command.

thanks for your help,
vale

log.lammps (71 KB)

in.run (1.61 KB)

mW.sw (1.24 KB)

data.180_ice.gz (238 KB)

Hello Fellow Lammps-Users,

dear vale,

I am working with a system in which 2/3 of the particles are
restrained with spring/self to make a wall. I apply npt fix to all the
particles, and i noticed that the average is right but the wall is
much colder than liquid inside. I presume that is because the spring/
self is added on top of the normal npt dynamics, but the target
temperature is measured with the real velocities. Is there a way to
enforce the temperature in each of the two groups?

this is a tricky issue. the problem is that fix spring/self
considers the initial position of the tethered atoms. that,
however, conflicts with the rescaling of the box and its positions
due to fix npt. if you run the same system with nvt, you'll see
that equipartitioning of the temperature is preserved.

in general, i doubt that this is a meaningful setup. you may
be better off using fix press/berendsen with the dilate partial
option ...and even that may be tricky. for systems with some
fixed atom positions, in general, only changing the box dimensions
without rescaling any atom positions and a large damping seems
to me the most reasonable choice, if you cannot use NVT.

cheers,
   axel.

Axel is correct that fix spring/self does not change the
tethering point of the atoms (their original position) when
the box size changes, which will likely cause problems
with what you're trying to do. This would be possible
to add - there is a hook in LAMMPS for this that the fix could
provide a response to. But I'm not sure even that will give
you the thermostatting/dynamics you want.

Steve