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

Berk Hess gmx3 at hotmail.com
Thu Mar 6 12:13:34 CET 2008


Hi,

I now realized that my fix what completely incorrect.
I wanted to multiply the margin of 0.0001 by 2, not the factor 0.5.
But my mistake means that is now given an error when the off diagonal
element is relatively more than 1 instead of more than 0.5.
This is a far too weak check.
So I would not expect any fatal errors any more with this incorrect check.
Therefore I don't understand why you still get errors.

Could you try changing BOX_MARGIN to 0.5005, as it currently is in version 4.0?

Berk.



> Date: Wed, 5 Mar 2008 09:40:58 +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,
> 
> some of my simulations crashed again, basically with the same error message:
> 
> "Source code file: ns.c, line: 313
> 
> Fatal error:
> Could not correct too skewed box"
> 
> Right now I have factored all occurrences of BOX_MARGIN by 2 in
> src/gmxlib/pbc.c but kept the original value of 0.5001 for BOX_MARGIN in
> include/pbc.h. Could the bug maybe fixed by setting BOX_MARGIN to 0.5005
> while multiplying all instances in src/gmxlib/pbc.c by 2?
> 
> 
> Best
> 
> Luther
> 
> 
> > 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/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-users/attachments/20080306/d1045d81/attachment.html>


More information about the gromacs.org_gmx-users mailing list