# pppm in non-periodic system

Dear all,
I have one equilibrated system of water of size (498.142 99 99). The NPT equilibrium process was run by using periodic boundary in all orthogonal direction. Now, I want to use “fs p p” with “fix wall/reflect” and long-range pppm solver altogether in a script. During run I got one error that “Cannot use nonperiodic boundaries with PPPM (…/pppm.cpp:190)”. From the doc page of “Kspace_modify” I saw that this problem I can avoid by using the “slab 3” keyword and argument. I have some questions here–

As per the doc page system should be non-periodic in Z direction to use kspace_modify, but my system would be non-periodic in X, as it is already equilibrated, so is there any way to change the X direction to Z after the equlibration ?

The doc page says that “The volfactor value sets the ratio of the extended dimension in z divided by the actual dimension in z.” Can anybody explain that how can I set the value Volfactor ? What the extended dimension in Z is ?

In case of my system i.e. 498.142 99 99 , does the volfactor value would 3 ?

Dear all,
I have one equilibrated system of water of size (498.142 99 99). The NPT
equilibrium process was run by using periodic boundary in all orthogonal
direction. Now, I want to use "fs p p" with "fix wall/reflect" and
long-range pppm solver altogether in a script. During run I got one error
that "Cannot use nonperiodic boundaries with PPPM (../pppm.cpp:190)". From
the doc page of "Kspace_modify" I saw that this problem I can avoid by using
the "slab 3" keyword and argument. I have some questions here--

> As per the doc page system should be non-periodic in Z direction to use
kspace_modify, but my system would be non-periodic in X, as it is already
equilibrated, so is there any way to change the X direction to Z after the
equlibration ?

no. convert your restart into a data file and swap the X and Z
coordinate columns and you're done.

at any rate, you have some more serious equilibrating to do, since you
are cutting through a bulk system and the two resulting surface will
be of high potential energy wherever atoms were interacting across the
periodic boundary. particularly in water the coulomb is pretty strong.

> The doc page says that "The volfactor value sets the ratio of the
extended dimension in z divided by the actual dimension in z." Can anybody
explain that how can I set the value Volfactor ? What the extended dimension
in Z is ?

as *already* explained in the docs you looked at, volfactor is the
number following the "slab" keyword.

when using the so-called slab correction, you _still_ do a periodic
calculation, but you enlarge the volume of your box (i.e. extend it)
to somewhat disconnect the periodic images. since coulomb is a
long-range interaction, that is incomplete and thus you need the slab
correction, which solves the poisson equation in the z-direction and
compensates the residual inter slab interaction (in z-direction only).
details are in the referenced paper by mark tuckerman.

In case of my system i.e. 498.142 99 99 , does the volfactor value would
3 ?

the tuckerman poisson solver requires at least 3 for a system like
yours. otherwise the inter-slab compensation would be incomplete.
there are cases where this would not apply, e.g. if there are regions
of uncharged particles or volumes from which particles are completely
excluded. using a larger value is possible to reduce the inter-slab
interaction in x- and y. this is typically too small to matter and
thus using more than 3 would mostly consume more CPU time.

axel.