Re: AMBER: NSNB parameter

From: Robert Duke <>
Date: Sat, 24 Apr 2004 10:05:05 -0400

Guys -
In my opinion, the approach of updating the pair list at fixed intervals is
outmoded. It does nothing to improve accuracy of results; in fact the
contrary is true. By the use of "skin checks", you can do what is needed
when it is needed. In pmemd, this check is distributed, and very cheap.
There is no support for fixed interval pairlist updates in pmend 8, and I
may well have dropped it in pmemd 3.1 too (sorry, my source machine is not
Regards - Bob Duke
----- Original Message -----
From: "Chris Moth" <>
To: <>
Sent: Saturday, April 24, 2004 8:31 AM
Subject: Re: AMBER: NSNB parameter

> At 10:45 PM 4/23/2004, Helios Chen wrote:
> >Dear all, I have no idea how to use this "NSNB" parameter. Could anybody
> >tell me what's this and when to use this parameter?
> In order to save computation time, sander does not compute nonbonded
> interactions between atoms which are distanced > CUT apart.
> But, the list of atom pairs which are close enough to warrant calculation
> is not computed at every time step. There are two methods in sander which
> can determine when to compute this list. From amber7.pdf : "If nbflag =
> construct the direct sum nonbonded list in the "old" way, i.e.
> update the list every nsnb steps. If nbflag = 1 (the default), nsnb is
> ignored, and the list is updated whenever any atom has moved more than 1/2
> skinnb
> since the last list update."
> I have only used nbflag=1 (the default) in my simulations - and thinks
> worked out OK - so far. Intutitively, the idea that sander can compute
> a pairs list when it needs it (no more or less often) is appealing.
> > By the way, why to set "igb=0 and nbflag=0" with using this NSNB
> > parameter? Thanks in advance.
> I am not a sander expert - but often find it helpful to explore the source
> code.
> I cd'd to the sander source directory on our Amber7 system and typed:
> grep -i nsnb *.f
> which shows me that runmd.f has code to turn on calculation of the
> nonbonded list ever nsnb steps:
> NTNB = 0
> if (mod(nstep,nsnb) .eq. 0) ntnb = 1
> grep -i ntnb *.f
> shows that ntnb is considred in the ew*.f code which handles non-bonded
> terms when vacuum or pme periodic md is run. This code is not run when
> When I look through the egb.f code (run when igb > 0), it seems that the
> cutoffs are applied inside each MD step - and the nonbonded list is not
> used as a tool to speed calculations.
> All nonbonded pairs have to be computed anyway to evaluate the GB
> energy. The numex and natex arrays appear to be computed at each step,
> offer some speedup:
> The comments at the outset of egb.f explain:
> c The "numex" and "natex" arrays are used to find "excluded" pairs of
> c atoms, for which gas-phase electrostatics and LJ terms are skipped;
> c note that GB terms are computed for all pairs of atoms.
> So, I suspect nbflag and nsnb are simply ignored when igb > 0. But, if
> are using GB, you are safer setting the variables to zero as recommended
> the manual.
> -----------------------------------------------------------------------
> The AMBER Mail Reflector
> To post, send mail to
> To unsubscribe, send "unsubscribe amber" to

The AMBER Mail Reflector
To post, send mail to
To unsubscribe, send "unsubscribe amber" to
Received on Sat Apr 24 2004 - 21:53:01 PDT
Custom Search