[gmx-users] Skewed box using Parrinello-Rahman pressure coupling

Berk Hess gmx3 at hotmail.com
Thu Feb 14 15:04:37 CET 2008




All occurrences of BOX_MARGIN in pbc.c should have the factor of 2:

#ifdef ALLOW_OFFDIAG_LT_HALFDIAG 
  else if ((fabs(box[YY][XX])+fabs(box[ZZ][XX])> 2*BOX_MARGIN*box[XX][XX]) ||
	   (fabs(box[ZZ][YY])> 2*BOX_MARGIN*box[YY][YY]))
#else
  else if ((fabs(box[YY][XX])> 2*BOX_MARGIN*box[XX][XX]) ||
	   (fabs(box[ZZ][XX])> 2*BOX_MARGIN*box[XX][XX]) ||
	   (fabs(box[ZZ][YY])> 2*BOX_MARGIN*box[YY][YY]))

You can leave BOX_MARGIN at 0.5001.

All these things are not critical for correct results.
The only annoying thing is that the "old" 3.3 code can give a fatal error
due to a rounding issue.

Berk.

> Date: Thu, 14 Feb 2008 14:31:15 +0100
> From: reich at mpikg.mpg.de
> To: gmx-users at gromacs.org
> Subject: [gmx-users] Skewed box using Parrinello-Rahman pressure coupling
> 
> Hi Berk,
> 
> thanks again. I am not sure though whether I have understood what
> modifications you have suggested. In src/gmxlib/pbc.c there are several
> occurrences of BOX_MARGIN, some with and some without a factor of two.
> Should each occurrence be multiplied by two (so those that have the factor
> already are left as they are and all others get multiplied)? Could you
> post the lines 71 to 76 of src/gmxlib/pbc.c with the right corrections so
> that I can be sure to implement them correctly?
> Also, should I leave the value for BOX_MARGIN in include/pbc.h at 0.5005
> or change it back to 0.5001 ?
> 
> 
> Best
> 
> Luther
> 
> > That good news.
> >
> > While looking at the code again just now,
> > I realized what the actual problem is.
> > The check before and after the box correction are both done with
> > BOX_MARGIN,
> > which can lead to the problem you observed when the last bit of the box
> > is rounded in an unlucky fashion. So even with your change the problem
> > could still occur.
> > A real fix is adding a factor 2 (2*) in front of BOX_MARGIN in
> > src/gmxlib/pbc.c.
> > I have added this fix for the 3.3.3 release.
> >
> > Berk.
> >
> >> Date: Wed, 13 Feb 2008 16:37:55 +0100
> >> From: reich at mpikg.mpg.de
> >> To: gmx-users at gromacs.org
> >> Subject: [gmx-users] Skewed box using Parrinello-Rahman pressure
> >> coupling
> >>
> >> Hi Berk,
> >>
> >> the change of parameter worked! My simulation finished without crashing.
> >>
> >>
> >> Thanks for your help
> >>
> >> Luther
> >>
> >>
> >> >> Dear Gromacs-users,
> >> >>
> >> >> I have been performing simulations with cubic and octahedron-shaped
> >> >> boxes
> >> >> using Parrinello-Rahman pressure coupling. After some time I get the
> >> >> error
> >> >> message "Could not correct too skewed box" and the simulations crash.
> >> >> I set the parameters for the coupling as listed below:
> >> >>
> >> >> pcoupltype               = isotropic
> >> >> tau_p                    = 5.0
> >> >> compressibility          = 5e-5
> >> >> ref_p                    = 1.0
> >> >>
> >> >>
> >> >> I have never encountered the same problems when using Berendsen
> >> pressure
> >> >> coupling so I suppose I must have made a bad choice for some
> >> parameter
> >> >> for
> >> >> the Parrinello-Rahman barostat. I tried to equilibrate my system
> >> using a
> >> >> Berendsen barostat before switching to Parrinello-Rahman for 1ns (and
> >> >> tau_p=1.0) but this didn´t help. Do you have any clue about where the
> >> >> problem originates from?
> >> >>
> >> >>
> >> >> Best
> >> >>
> >> >> Luther
> >> >
> >> > I guess this is a rounding issue in the box checking/correcting
> >> routines.
> >> > Could you change BOX_MARGIN in include/pbc.h from 0.5001 to 0.5005,
> >> > recompile gmxlib, mdlib and mdrun and see if the problem still occurs?
> >> > Please report back, so we can fix this for 3.3.3.
> >> >
> >> > Berk.
> 
> _______________________________________________
> gmx-users mailing list    gmx-users at gromacs.org
> http://www.gromacs.org/mailman/listinfo/gmx-users
> Please search the archive at http://www.gromacs.org/search before posting!
> Please don't post (un)subscribe requests to the list. Use the 
> www interface or send it to gmx-users-request at gromacs.org.
> Can't post? Read http://www.gromacs.org/mailing_lists/users.php

_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today it's FREE!
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/


More information about the gromacs.org_gmx-users mailing list