This is a key limitation of the BELLY and the position restraint code
(NTR=1) that limits their utility in cases like this when you want to
restrain or constrain multiple molecules and pressure scaling is
performed. What is happening is that all the pressure scaling (i.e.
either shifting of molecule centers with NPSCAL = 1 or scaling of atomic
coordinates when the box size is altered) occurs on both the native
coordinates and the reference (i.e. restraint or constrained) coordinates.
As your three groups are in different molecules, and you are doing
molecule based scaling, the relative positions are shifting.
There is two ways to hack around this problem (for the case of NTR=1; with
belly only the first option currently works as separate reference
coordinates are not maintained for the BELLY state).
(1) Alter the prmtop file to merge the first three molecules into a single
molecule. I usually copy the prmtop into a new file (prmtop.belly) and
then modify it by hand. I use this prmtop only for the NTR=1 or IBELLY=1
simulations.
(2) Alter runmd.f to NOT call ew_pscale IF ntr.gt.0 (i.e. comment out two
lines of code).
The molecule array is near the bottom of the PRMTOP file in A7 format
prmtop files. Search for "FLAG SOLVENT_POINTERS".
The numbers after this represent the final residue that is part of the
solvent (this will not change), the total number of molecules and the
first solvent molecule.
The array after this is the FLAG ATOMS_PER_MOLECULES and represents the
atom count for each molecule. If you want to merge all three molecules,
add them up and put the number in the first column, then shift the values
such that there are now two less entries. Then alter the total number of
molecules and first solvent molecule. For example, when merging two
molecules:
Before:
%FLAG SOLVENT_POINTERS
%FORMAT(3I8)
62 4124 44
%FLAG ATOMS_PER_MOLECULE
%FORMAT(10I8)
631 38 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3 3
...
3 3 3 3
%FLAG BOX_DIMENSIONS
After:
%FLAG SOLVENT_POINTERS
%FORMAT(3I8)
62 4123 43
%FLAG ATOMS_PER_MOLECULE
%FORMAT(10I8)
669 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3 3
...
3 3 3
%FLAG BOX_DIMENSIONS
Good luck!
Thomas E. Cheatham, III (Assistant Professor) College of Pharmacy, Depts of
62 4124 44
residue no. before water / total no. of molecules / water starting point