You explained very clearly to me. I appreciate very much!
Have a good one!
Junjun
On Wed, Apr 28, 2010 at 5:04 PM, Robert Duke <rduke.email.unc.edu> wrote:
> What you are doing in the check that determines whether pairlist rebuild is
> needed is simple. If the max distance moved by any one atom is 1/2 skin,
> then we basically assume that some other atom has moved close to that
> distance. At this point, all atom pair interactions are still covered by
> the "skin", but we may have an atom move further in the next step (or not).
> At any rate, it is safest to just go ahead and rebuild the pairlist at this
> point. This undoubtedly results in pairlist rebuilds that are more frequent
> than absolutely necessary, but it keeps the check cheap; everything in code
> like this is a tradeoff with regards to performance, and we want the best
> performance possible, but within the constraints of insuring accuracy.
>
> Regards - Bob Duke
> ----- Original Message ----- From: "liu junjun" <ljjlp03.gmail.com>
> To: "AMBER Mailing List" <amber.ambermd.org>
> Sent: Wednesday, April 28, 2010 4:27 PM
>
> Subject: Re: [AMBER] about skinnb
>
>
> OK, got one more question. Hopefully I am not bothering you..
>
> The nonbond (nb) pairlist is extended to cut+skinnb, and then those nb
> pairs
> that are within the extended skinnb are ignored when calculating
> energies/forces. Meanwhile, 1/2 skinnb is compared with maxdis to decide
> whether to rebuild the nonbond pairlist or not, where nb pairlist is not
> used here and the maxdis is the maximum displacement among all the atoms in
> the system. It looks like those nb pairs within the extended skinnb are not
> used. I am curious why extending the nb pairlist. Could you please give me
> a
> hint?
>
> Thanks!
>
> Junjun
>
> On Wed, Apr 28, 2010 at 4:02 PM, liu junjun <ljjlp03.gmail.com> wrote:
>
> I found the code that filter off those within skinnb of nonbond list. Now
>> I
>> understand. Thank you very much!
>>
>> Best!
>>
>> Junjun
>>
>>
>> On Wed, Apr 28, 2010 at 3:16 PM, Robert Duke <rduke.email.unc.edu> wrote:
>>
>> No, not correct. Within the energy and force evaluation routines, you
>>> LOOK at all entries on the nonbonded pairlist. BUT you only calculate
>>> energies, forces, virials (if needed) on atoms that are within cut of
>>> each
>>> other. A simple test without even looking at the code. Set skinnb to
>>> 2.0
>>> and run 50 steps. Then set skinnb to 4.0 and run 50 steps. Compare
>>> results
>>> - should be the same. Try same with actual change of cut by 2.0
>>> angstrom -
>>> results will be slightly different.
>>> Regards - Bob
>>> (but if you look at the code, that should convince you too... ;-))
>>>
>>> ----- Original Message ----- From: "liu junjun" <ljjlp03.gmail.com>
>>> To: "AMBER Mailing List" <amber.ambermd.org>
>>> Sent: Wednesday, April 28, 2010 3:05 PM
>>> Subject: Re: [AMBER] about skinnb
>>>
>>>
>>>
>>> Hi Bob,
>>>
>>> Thank you for your kind explanation. But I still have question. The
>>> manual
>>> says:
>>> 1. nonbonded list is extended to cut + skinnb
>>> 2. van der Waals and direct electrostatic interactions are truncated at
>>> cut
>>>
>>> If nonbond list is extended to cut+skinnb, then how could nonbond
>>> interactions be truncated at cut? As I understand by reading subroutine
>>> "get_nb_energy", the nonbond energies are calculated by reading
>>> whaterever
>>> in the nonbond list, which means the nonbond interactions are truncated
>>> also
>>> at cut+skinnb. Is this correct?
>>>
>>> Thanks!
>>>
>>> Junjun
>>>
>>> On Tue, Apr 27, 2010 at 1:32 PM, Robert Duke <rduke.email.unc.edu>
>>> wrote:
>>>
>>> The skinnb parameter is essentially an optimization parameter; by
>>> default
>>>
>>>> both sander and pmemd add a "skin" to the direct space cutoff length,
>>>> monitor the maximum atom movement every dynamics step, and only rebuild
>>>> the
>>>> pairlist when an atom has moved sufficiently far that an atom within the
>>>> actual cutoff distance could be missed in the calculations. If you just
>>>> take the default value for skinnb, everything will be fine. At least in
>>>> the
>>>> past (and maybe currently for sander - I am not sure- but never for
>>>> pmemd),
>>>> it was possible to specify rebuilding of the pairlist every nsnb
>>>> (another
>>>> parameter) steps. This is not such a good idea, except perhaps for
>>>> minimizations, where I believe with sander it is the default (there is
>>>> not a
>>>> lot of actual atom movement in a minimization). You can get a more
>>>> complete
>>>> idea by looking in the manual at the descriptions of the namelist
>>>> variables
>>>> nsnb, nbflag, and skinnb.
>>>> Regards - Bob Duke
>>>> ----- Original Message ----- From: "liu junjun" <ljjlp03.gmail.com>
>>>> To: <amber.ambermd.org>
>>>> Sent: Tuesday, April 27, 2010 1:08 PM
>>>> Subject: [AMBER] about skinnb
>>>>
>>>>
>>>>
>>>> Hi all,
>>>>
>>>> I am trying to understand the skinnb parameter. The description for this
>>>> parameter in the Manual is:
>>>> ----------------
>>>> SKINNB
>>>> Width of the nonbonded "skin".The direct sum nonbonded list is extended
>>>> to
>>>> cut + skinnb, and the van der Waals and direct electrostatic
>>>> interactions
>>>> are truncated at cut. Default is 2.0 Å.Use of this parameter is required
>>>> for
>>>> energy conservation, and recommended for all PME runs.
>>>> ---------------
>>>>
>>>> My questions are:
>>>> 1. in subroutine "pack_nb_list" or "pack_nb_nogrdptrs" of ew_direct.f,
>>>> variable cutoffsq = square of (cut + skinnb)
>>>> variable r2 = square of distance between any nonbond pair atoms
>>>> The nonbond list is built by setting r2 < cutoffsq. I believe this
>>>> corresponds to the description that "The direct sum nonbonded list is
>>>> extended to cut + skinnb". However, in subroutine "get_nb_energy", I
>>>> notice
>>>> that vdw and electrostatic (eel) interactions are calculated by reading
>>>> whatever in the nonbond list. It looks like the vdw and eel are
>>>> truncated
>>>> at
>>>> (cut+skinnb) instead of cut as stated in the Manual. Am I missing
>>>> something?
>>>>
>>>> 2. Can anybody please give me any references about "Use of this
>>>> parameter
>>>> is
>>>> required for energy conservation"
>>>>
>>>> By the way, the source code I am reading is from AMBER8
>>>>
>>>> Thanks!
>>>>
>>>> Junjun
>>>> _______________________________________________
>>>> AMBER mailing list
>>>> AMBER.ambermd.org
>>>> http://lists.ambermd.org/mailman/listinfo/amber
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> AMBER mailing list
>>>> AMBER.ambermd.org
>>>> http://lists.ambermd.org/mailman/listinfo/amber
>>>>
>>>> _______________________________________________
>>>>
>>> AMBER mailing list
>>> AMBER.ambermd.org
>>> http://lists.ambermd.org/mailman/listinfo/amber
>>>
>>>
>>>
>>> _______________________________________________
>>> AMBER mailing list
>>> AMBER.ambermd.org
>>> http://lists.ambermd.org/mailman/listinfo/amber
>>>
>>>
>>
>> _______________________________________________
> AMBER mailing list
> AMBER.ambermd.org
> http://lists.ambermd.org/mailman/listinfo/amber
>
>
>
> _______________________________________________
> AMBER mailing list
> AMBER.ambermd.org
> http://lists.ambermd.org/mailman/listinfo/amber
>
_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Wed Apr 28 2010 - 14:30:05 PDT