# barostat with dilate option

Dear all,

I’m doing a simulation in which I have polymer wall with water on both side of the wall with periodic boundary conditions on all directions. I’m making a central slab of the wall rigid with turning off the forces and torques on that and excluding it from barostat (in z direction) by using dilate option. Here is the wall with its centre slab that I make it rigid with “fix rigid”.

H2O

-----------------------------------------|

-----------------------------------------|

Centre Slab | |

-----------------------------------------| | z

------->x (Axes)
-----------------------------------------|

H2O

What I understand from the documentation is that the particles that are not in dilate group are not scaled at all.

Questions:

1. If I write the centre of mass coordinates of the centre slab, I expect to get constant coordinates over time with dilate option includes all except the “Centre Slab” (taking the fact that the slab is rigid and forces and torques are turned off on that) , is that right?

Because I’m seeing a tiny oscillation in z coordinate of the center of mass of the slab. Is that expected?

I appreciate if you can clarify the dilate behaviour more.

Cheers,

Kasra.

Let me add this point too:
the centre slab that I apply fix rigid on is just the central region of the wall with a predefined thickness. So basically part of the a polymer chain that happens to be in the region is rigidified while rest of the chain that hangs out of the region is not rigid. I do this to prevent the swelling of the wall that happens during the npt simulation. So:
Can the changes in coordinate of the center of mass of the “Centre Slab” happen (in contrast to expected dilate option behaviour) because of the scaling of the part of the polymer chain that part of it hangs out of the “Centre Slab” region?

may be stale.
Check the "Translocation" and "Nanotube" examples on the
www.moltemplate.org web site (scroll down.) In the NPT examples, I
use "fix rigid" however Trung and Steve do not think this is
necessary.

Anyway the NPT input script I used (for the "translocation" example) is here:

http://www.moltemplate.org/examples/translocation/run.in.npt

regarding the oscillation you are seeing:

There's a video I made of this system under NPT conditions here:
http://www.moltemplate.org/videos/translocation/walls+solvent+polymer_t=0-60ps.avi

You can see that the walls do move up and down during the simulation.
However the distance between them does not increase (even though the
simulation box size increases).

Is this what you are seeing?
I think that kind of movement should be okay.

Hope this helps
Andrew

The run script for the "nanotube" example (under NPT conditions) is here.
http://www.moltemplate.org/examples/nanotube+water/run.in.npt

I hope these scripts still work.

If you are computing the center of mass of a group

of atoms that never move, then the COM should

not change, even by epsilon. You can easily verify

if the atoms aren’t moving by dumping their coords

to high precision. If all you want is some atoms
not to move, then fix rigid is overkill, as its doc
page explains. Simply do not integrate those atoms
and they will not move.

Steve

Dear Andrew and Steve,

Thanks for your response, actually the approach that I’m taking here is exactly what I understood and picked up from the discussion that you guys had in:

H2O

-----------------------------------------|

-----------------------------------------|

Centre Slab | |

-----------------------------------------| | z

------->x (Axes)
-----------------------------------------|

H2O

Here I haver a 20 A thick polymer wall that swells and water molecules get into it during the npt equilibration. One solution to prevent this is to tether a centre piece of the wall (e.g. 5 A thickness which is the “Centre Slab” in the schematic) to springs and restrict the movement of the atoms in that slab but the problem is that LAMMPS doesn’t scale the spring tether point during NPT and this cause spurious pressure in the system, however, as far as I know GROMACS does this scaling and this setup can be used there. So I tried to solve this in LAMMPS by following the discussion (http://lammps.sandia.gov/threads/msg23400.html) and I exclude the 5 A region (“Centre Slab”) from integration and I used fix rigid with turned off forces and torques as an attempt to eliminate the virial contribution from rest of the field on the atoms in this slab, as suggested by Andrew if I understood correctly?!

Steve: that’s why I’m using fix rigid.

I’m also using “dilate” option of the nph and the group that I’m applying this on is (water + wall - “Centre Slab”) so I expect that the “Center Slab” shouldn’t move at all. However, as I mentioned in previous post I’m seeing tiny oscillation of the com of this slab. Is this because of competing effect of the scaling part of the polymer chain that is outside of the slab and is scaled and part of it that is trapped inside the slab? basically can this cause “dilate” not to function as is expected or it has to no matter what?

Kasra.

Dear Andrew and Steve,

Thanks for your response, actually the approach that I'm taking here is
exactly what I understood and picked up from the discussion that you guys
LAMMPS Molecular Dynamics Simulator

H2O
>-----------------------------------------|
> >
>-----------------------------------------|
> Centre Slab | |
>-----------------------------------------| | z
> > >------->x (Axes)
>-----------------------------------------|
H2O

Here I haver a 20 A thick polymer wall that swells and water molecules get
into it during the npt equilibration. One solution to prevent this is to
tether a centre piece of the wall (e.g. 5 A thickness which is the "Centre
Slab" in the schematic) to springs and restrict the movement of the atoms in
that slab but the problem is that LAMMPS doesn't scale the spring tether
point during NPT and this cause spurious pressure in the system, however, as

but couldn't that be solved by just choosing the origin differently?
or by using fix spring in couple mode to an immobilized particle that
would be properly displaced along the rest?

axel.

What I tried to use when I was trying spring approach was using fix spring/self. Some questions to understand your suggestions:

First:

By “choosing the origin differently”, by origin do you mean the tether point? or the origin of the coordinate system?

Second:

If I want to use regular “fix spring” with couple mode:
– Is that tethering the slab’s atoms to some atoms that I make them to be immobilized? and this is for taking care of scaling the tether point, right?
– How should R0 be defined in this case?

Thanks,

Kasra.

What I tried to use when I was trying spring approach was using fix
spring/self. Some questions to understand your suggestions:
First:
By "choosing the origin differently", by origin do you mean the tether
point? or the origin of the coordinate system?

the coordinate system.

Second:
If I want to use regular "fix spring" with couple mode:
-- Is that tethering the slab's atoms to some atoms that I make them to be
immobilized? and this is for taking care of scaling the tether point, right?

you would add a new atom a the location of the center of mass of the
slab. this atom has no interactions with any other atoms, is not time
integrated and has a large mass. and then tether the entire slab to
it.

-- How should R0 be defined in this case?

0.0, of course.

Dear Andrew and Steve,
LAMMPS Molecular Dynamics Simulator

Here I haver a 20 A thick polymer wall that swells and water molecules get
into it during the npt equilibration. One solution to prevent this is to
tether a centre piece of the wall (e.g. 5 A thickness which is the "Centre
Slab" in the schematic) to springs and restrict the movement of the atoms in
that slab but the problem is that LAMMPS doesn't scale the spring tether
point during NPT and this cause spurious pressure in the system, however, as
far as I know GROMACS does this scaling and this setup can be used there. So
I tried to solve this in LAMMPS by following the discussion
(LAMMPS Molecular Dynamics Simulator) and I exclude the 5 A
region ("Centre Slab") from integration and I used fix rigid with turned off
forces and torques as an attempt to eliminate the virial contribution from
rest of the field on the atoms in this slab, as suggested by Andrew if I
understood correctly?!

Steve: that's why I'm using fix rigid.

First of all, this discussion took place at an earlier time, and
LAMMPS may have behaved differently. Back then, I did notice that at
atmospheric pressure "fix rigid" did a better job preserving the
volume of the water. At that time, simply omitting the immobile slab
from the atoms, did cause the volume of the system to jump slightly.
(If I can find the plot I made showing this, I'll repost it.)

Since then, there are new versions of fix rigid. See:
LAMMPS Molecular Dynamics Simulator
I no longer feel informed enough to have a strong opinion how to do
this. Trung wrote fix rigid, and I definitely respect his opinion.

I suggest to try doing it both ways, and see which works better.

I'm also using "dilate" option of the nph and the group that I'm applying
this on is (water + wall - "Centre Slab") so I expect that the "Center Slab"
shouldn't move at all. However, as I mentioned in previous post I'm seeing
tiny oscillation of the com of this slab. Is this because of competing
effect of the scaling part of the polymer chain that is outside of the slab
and is scaled and part of it that is trapped inside the slab? basically can
this cause "dilate" not to function as is expected or it has to no matter
what?

Have you checked to see if the width of the slab is constant?
If you haven't yet, take a look at this video:
http://www.moltemplate.org/videos/translocation/walls+solvent+polymer_t=0-60ps.avi
(The two purple walls do slide up and down, but the distance between
them remains the same.)

I hope I haven't been spreading misinformation how to do this.
Axel's suggestion of tethering the immobile particles to a heavy atom
might work. I never thought of that!

Andrew