Yes, but I still cannot write out the pair interaction for each ion since there is cut off. With cut off, I need to assign a averge value of the last two constants to each ion. But I cannot get the total number of neighbours in a cut off distance in advance. So I cannot use the user defined part to do my eletrostatic summation.

I compared carefully with Wolf summation with the Ewald summation, the differences are:
1. There is no reciprocal term in Wolf.
2.Instead, the Wolf assums that the ions out side the truncations sphere is exactly located at the sphere. That is how the extra two terms come out. 3. Wolf uses cut-off, while Ewald can only deal with peoriodical boundary conditions cases. So I need to add a similiar summation like Ewald to treat with the long-range electrostatic force, not a non-bonded interaction. Then which parts needs to be read and modified?
Thank you for your kindly help.
Shuangxing Dai

----- Original Message ----- From: "Mark Abraham" <mark.abra...@anu.edu.au>
To: "Discussion list for GROMACS users" <gmx-users@gromacs.org>
Sent: 26 March, 2009 4:56 PM
Subject: Re: [gmx-users] How to add another electrostatic summation methodin Gromacs


Shuangxing Dai wrote:
Thank you for your help. I attached the page of the form of potential. The equation (5.13) gives all the potential energy of neighbours of one ion in a truncation sphere. Rc is cut-off. Since this potential depends on all the neighbours in a cut-off distance, I cannot give the pair interaction because in this method, only the total potential energy of one ion maks sense. In Ewald summation, both the real space and reciprocal space summation can be written as the summation of pair potential. But in wolf, I cannot do that.

It looks separable into a double sum over atom pairs from within a cutoff, since the value of that limit is constant.

Since I cannot use Ewald without peoriodical boundary conditions while this Wolf method can, so I cannot simply use Gromacs to do my simulation. The question is which files needed to be modified if I want to add a new one? Is there any direct way? Or I should read all the whole code?

You can start by reading the kernel code generated by mknb during the make process and found in src/gmxlib/nonbonded/nb_kernel. If you play with the flags to mknb you can get comments embedded in the C files. Find the one that does Ewald without table lookups and consider how you'd need to change it to suit your needs.

Mark
_______________________________________________
gmx-users mailing list    gmx-users@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-requ...@gromacs.org. Can't post? Read http://www.gromacs.org/mailing_lists/users.php

_______________________________________________
gmx-users mailing list    gmx-users@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-requ...@gromacs.org.
Can't post? Read http://www.gromacs.org/mailing_lists/users.php

Reply via email to