[gmx-users] Electrostatic forces
Florian Dommert
dommert at icp.uni-stuttgart.de
Wed Jun 17 14:22:00 CEST 2009
Hello Mark,
the point why I ask all this questions is that my final goal is to
enhance the SPME algorithm in Gromacs. As it is well know, that SPME is
not momentum conserving in case the forces are derived with analytical
differentiation, that means the reciprocal forces stem from the
derivative of the reciprocal sum after performing the FFTs in
reciprocal space and back again. This just requires 2FFTs per step.
In contrast the ik differentiation allows to obtain forces that
conserve the momentum. However in this case 4FFT are required: 1 into
reciprocal space and 3 back to gather every component of the force.
We have tested this two implementations of the SPME and realized that
under the condition of a certain accuracy, the analytical
differentiation is not always the cheaper one as expected due to the less
number of FFTs. Sometimes the higher number of FFTs is balanced out by
the smaller interpolation order or
reciprocal space cut-off required to reach the accuracy the same
accuracy as in case of analytical differentiation.
It is also sad, that the PPPM algorithm is not working correctly,
because this would be the "best" way of calculation electrostatic
forces. The authors showed that the Green
Function that is determined by the interpolation scheme and used
for their derivation of the PPPM is mathematically the
optimal one. So I also would like to correct the implementation of the
PPPM algorithm to provide a correct implementation of the virial
calculation.
And by the way, the error of the RMSF depens on the charge density,
beta, interpolation order and cutoffs in real and reciprocal space.
This means as soon as you have the optimal set for a given charge
density. So you can apply this parameters to all systems with the
same charge density independent of its actual size and charge
distribution, only the charge density has to match.
Flo
* Mark Abraham <Mark.Abraham at anu.edu.au> [2009-06-17 16:11:14 +1000]:
> Florian Dommert wrote:
>> * Mark Abraham <Mark.Abraham at anu.edu.au> [2009-06-17 15:31:43 +1000]:
>>
>>> Florian Dommert wrote:
>>>> * Mark Abraham <Mark.Abraham at anu.edu.au> [2009-06-17 14:14:22 +1000]:
>>>>
>>>>> Florian Dommert wrote:
>>>>>
>>>>>> However I am very confident and in case of success, that there will be
>>>>>> soon an error estimate for the Ewald Sum available, which will
>>>>>> be the first
>>>>>> step to the an implementation a tuning routine for the SPME
>>>>>> paramters to achieve optimal
>>>>>> balance between performance and accuracy ;)
>>>>>
>>>>> I've already implemented a version of mdrun that actually
>>>>> computes the RMS error in the force components under PME, and
>>>>> am planning to release it soon.
>>>>
>>>> That is very nice to hear, how do you compute the error ? By
>>>> comparing to an
>>>> Ewald Sum ?
>>>
>>> Holding beta fixed, I compare force components with those from a
>>> converged real-space summation and high Fourier grid density &
>>> interpolation order.
>>
>> So you have to perform a very costly simulation for every system, when
>> you gather the reference force ?
>
> Actually, both the reference force run and the parameter scan runs are
> invocations of "mdrun -rerun". I haven't notice the former to be very
> costly, but there's a trade-off involved. To converge the components to
> machine precision might indeed be very costly, but one doesn't need to
> go to that extreme to estimate that the average RMS force error over the
> test trajectory is 1e-4 (or whatever).
>
>> And which beta do you choose, because
>> if you take the right choice you can decrease the computational cost
>> extremely.
>
> Yep. Having chosen a desired accuracy, you have to scan beta (with
> ewald_rtol and rcoulomb) and then scan the grid densities to find
> point(s) with acceptable accuracy and minimal cost. This is not such an
> extreme problem once you have some guidance from previous optimizations.
>
>> So theoretically at first you have to find the right beta by
>> sampling through the corresponding parameter space with a fixed
>> Interpolation order and grid size. In the optimal range a change of beta
>> within 0.1 will yield a difference in the error of about 10-1 this trend
>> continues around +/- 0.5 of the optimal value for beta.
>
> OK, I'll have to take your word for that, since I haven't looked at the
> maths in that detail. It's certainly well-known (e.g. original PME
> papers) that a correct choice of parameters can swing orders of
> magnitude of computational cost for given accuracy, or vice-versa.
>
> Mark
> _______________________________________________
> gmx-users mailing list gmx-users at gromacs.org
> http://lists.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
--
Florian Dommert
Dipl.-Phys.
Institute for Computational Physics
University Stuttgart
Pfaffenwaldring 27
70569 Stuttgart
Tel: +49 - 711 / 6856-3613
Fax: +49 - 711 / 6856-3658
EMail: dommert at icp.uni-stuttgart.de
Home: http://www.icp.uni-stuttgart.de/~icp/Florian_Dommert
!! PGP-ENCODED emails preferred !!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 194 bytes
Desc: not available
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-users/attachments/20090617/1dc62c1b/attachment.sig>
More information about the gromacs.org_gmx-users
mailing list