[gmx-developers] Reaction field questions

Berk Hess hess at kth.se
Wed Mar 4 10:29:32 CET 2015


On 03/04/2015 09:29 AM, David van der Spoel wrote:
> On 2015-03-04 00:12, Noel Carrascal wrote:
>> hi again,
>>
>> I am interested in the development of improved methods for long range
>> electrostatic
>> interactions, and I started to look into the code for that.
>>
>> When I looked into the file name corresponding to reaction field
>> calculations
>>
>> /src/gromacs/mdlib/rf_utils.c
>>
>> It all seems correct and makes absolute sense except for two lines in
>> the code
>> that are inside the function "real RF_excl_correction," lines 133 and 
>> 134:
>>
>>               129>  ener += qqA*(ek*norm2(dx) - ec);
>>               130>  svmul(-2*qqA*ek, dx, df);
>>               131>   rvec_inc(f[i], df);
>>               132>   rvec_dec(f[k], df);
>>               133>   rvec_inc(fshift[ki], df);
>>               134>   rvec_dec(fshift[CENTRAL], df);
>>
>> What is the physical significance of modifying df by fshift[ki] and
>> fshift[CENTRAL]?
>> I can't understand the need of modifying forces by these two terms, does
>> the manual
>> says anything about this? if so, I missed it. please help.
>>
>> Thanks
>>
>> Noel Carrascal,
>>
>>
> These forces are used to compute the virial and hence the pressure.
> Having said that, if you are interested in improved methods for long 
> range forces, why are you looking at reaction fields?
>
Note that you misinterpreted the rvec operations: fshift is being 
modified, not df. The pdf manual has a section on shift force calculation.
Furthermore, this code is only used with the group cut-off scheme, which 
has been superseded by the Verlet cut-off scheme. Exclusion corrections 
now happen inside the nbnxn non-bonded kernels.

Cheers,

Berk



More information about the gromacs.org_gmx-developers mailing list