[gmx-developers] modifing nonbonded interactions

David van der Spoel spoel at xray.bmc.uu.se
Sun Oct 19 16:17:47 CEST 2008


Nazish Hoda wrote:
> Hi David,
> 
> Can you tell me which journal and where was this paper published ?

phys rev lett 2006
> 
> Thanks, Nazish.
> 
> 
> 
> Quoting David van der Spoel <spoel at xray.bmc.uu.se>:
> 
>> Nazish Hoda wrote:
>>>> OK. While the simplest way to implement this is to modify the inner 
>>>> loop of the kernels to do such a comparison, this will severely hurt 
>>>> performance. If one was already dropping from the optimized kernels 
>>>> to a generic kernel, then the additional drop is probably not so 
>>>> severe, but I'd expect still noticeable.
>>>
>>> This is what I have done. It is definetely slower. I am more 
>>> interested in checking the physics. If this works then I will think 
>>> of implementing the other idea you gave; that would require more 
>>> effort. The big plan is to perform implict solvent simulations for 
>>> charged systems that can mimic full atomistic simulations.
>>>
>>> I have posted these queries on a regular basis for two weeks now, 
>>> since I started to work on this. But no one use to respond. I did not 
>>> wanted to
>>> spend much time going through the full source code because I needed to
>>> add just few lines. I was lucky today that I got some responses.
>>>
>>> I would like to thank you once more, it really saved me lots of time, 
>>> Nazish.
>>
>> Implementing distance dependent cutoff using tables is very simple, in 
>> addition it does not hurt performance compared to e.g.using PME since 
>> you we use tables for that as well. Most important using tables this 
>> will work in vanilla gromacs.
>>
>> You may want to check recent papers by Berk Hess where he has done 
>> similar things, by the way.
>>
>>>
>>>
>>> Quoting Mark Abraham <Mark.Abraham at anu.edu.au>:
>>>
>>>> Nazish Hoda wrote:
>>>>> Hi Mark,
>>>>>
>>>>> I really appreciate your help.
>>>>> Let me first describe what I am planning to do.
>>>>> I want to implement a position dependent dielectric constant:
>>>>> \epsilon = \epsilon_near  r < r_1,
>>>>> \epsilon = \epsilon_far   r > r_1.
>>>>
>>>> OK. While the simplest way to implement this is to modify the inner 
>>>> loop of the kernels to do such a comparison, this will severely hurt 
>>>> performance. If one was already dropping from the optimized kernels 
>>>> to a generic kernel, then the additional drop is probably not so 
>>>> severe, but I'd expect still noticeable.
>>>>
>>>> Much better would be to hijack the twin-range cut-off machinery to 
>>>> create different groups of nonbonded interactions which get sent to 
>>>> unmodified nonbonded kernels with different epsilon values. This way 
>>>> the  distance test is done once per (charge-group) interaction 
>>>> during the neighbour-searching, and you get to keep the optimized 
>>>> kernels. See section 4.6.3 of the GROMACS 3.3 manual for some 
>>>> introductory information.
>>>>
>>>> Better still would be to find that some other simulation code 
>>>> already has such a mechanism implemented.
>>>>
>>>>> Regarding your suggestions, I now understand that I can force it 
>>>>> not to use the optimized subroutines. Though I did not undertand 
>>>>> what David means that I will be better served by using lookup 
>>>>> tables; is he referring to the numbering scheme for LJ, Coloumbic, 
>>>>> and water optimized functions, and how to use this information to 
>>>>> refer to the correct kernel functions?
>>>>
>>>> They don't vary the kernels, that's the point. Once you supply a 
>>>> table, the table-lookup kernels will be used. See section 6.6 of the 
>>>> 3.3 manual. Such an approach isn't useful to you, since you want 
>>>> what amounts to a different functional form depending on the value 
>>>> of r. This underscores why you should have been describing your 
>>>> objective, so that people trying to help you don't have to make 
>>>> shots in the dark - or ignore you until you ask a "right" question :-).
>>>>
>>>> Mark
>>>> _______________________________________________
>>>> gmx-developers mailing list
>>>> gmx-developers at gromacs.org
>>>> http://www.gromacs.org/mailman/listinfo/gmx-developers
>>>> Please don't post (un)subscribe requests to the list. Use the www 
>>>> interface or send it to gmx-developers-request at gromacs.org.
>>>>
>>>>
>>>>
>>>
>>> _______________________________________________
>>> gmx-developers mailing list
>>> gmx-developers at gromacs.org
>>> http://www.gromacs.org/mailman/listinfo/gmx-developers
>>> Please don't post (un)subscribe requests to the list. Use thewww 
>>> interface or send it to gmx-developers-request at gromacs.org.
>>
>>
>> -- 
>> David van der Spoel, Ph.D., Professor of Biology
>> Molec. Biophys. group, Dept. of Cell & Molec. Biol., Uppsala University.
>> Box 596, 75124 Uppsala, Sweden. Phone:    +46184714205. Fax: +4618511755.
>> spoel at xray.bmc.uu.se    spoel at gromacs.org   http://folding.bmc.uu.se
>> _______________________________________________
>> gmx-developers mailing list
>> gmx-developers at gromacs.org
>> http://www.gromacs.org/mailman/listinfo/gmx-developers
>> Please don't post (un)subscribe requests to the list. Use the www 
>> interface or send it to gmx-developers-request at gromacs.org.
>>
>>
>>
> 
> _______________________________________________
> gmx-developers mailing list
> gmx-developers at gromacs.org
> http://www.gromacs.org/mailman/listinfo/gmx-developers
> Please don't post (un)subscribe requests to the list. Use thewww 
> interface or send it to gmx-developers-request at gromacs.org.


-- 
David van der Spoel, Ph.D., Professor of Biology
Molec. Biophys. group, Dept. of Cell & Molec. Biol., Uppsala University.
Box 596, 75124 Uppsala, Sweden. Phone:	+46184714205. Fax: +4618511755.
spoel at xray.bmc.uu.se	spoel at gromacs.org   http://folding.bmc.uu.se



More information about the gromacs.org_gmx-developers mailing list