# [gmx-developers] virial

Jason de Joannis jdejoan at emory.edu
Fri Jan 12 17:55:12 CET 2007

So now I need to know if there is any way to somehow pass arguments to
do_nonbonded that would omit interactions with atoms of my designation.
Perhaps there are several ways to do this, eg, dummy atoms, groups,
lambda, neighbor lists. Suggestions greatly appreciated. Best regards,

/Jason

Quoting Jason de Joannis <jdejoan at emory.edu>:

> Okay, the problem is that I am using the mol-shift rather than the
> nearest-image-shift (not heeding Erik's earlier warning). The latter
> is not stored as an array which is why that part of the virial is
> computed as via fshift from the outer kernel loop. Thus an independent
> calculation of the virial is not possible because I don't have access to
> f_ij.
>
> To provide more clarity on this matter, I suggest in future manuals to
> use something like this:
>
> The vector $\textbf{r}_{ij}^k = \textbf{r}_i-\textbf{r}_j+\delta^k$
> shall represent the interparticle distance between the $k$th image of
> $i$ and the `real' $j$. There are 27 such images for a triclinic
> cell; one of these, lets call it $n$, produces the smallest distance
> (minimum image). Similarly we shall define the force
> $\textbf{F}_{ij}^k$ as equal to the normal interparticle force
> $\textbf{F}_{ij}$ if $k=n$, but zero otherwise. This is equivalent to
> the use of a cutoff that is less than half the box length. This
> notation allows us to represent the image summation explicitely in
> the virial,
>
> \Xi = -\frac{1}{2}\sum_{k=1}^{27}\sum_{i<j}
>      \textbf{r}_{ij}^k  \otimes  \textbf{F}_{ij}^k.
>
> Now we can decouple things as follows,
> \begin{eqnarray}
> \Xi &=& -\frac{1}{2}\left(
>        \sum_{k=1}^{27}\sum_{i<j}
>        (\textbf{r}_i-\textbf{r}_j) \otimes \textbf{F}_{ij}^k
>        +\sum_{k=1}^{27}\sum_{i<j}
>        \delta^k \otimes \textbf{F}_{ij}^k
>        \right) \\
>    &=& -\frac{1}{2}\left(
>        \sum_{i<j}(\textbf{r}_i-\textbf{r}_j)
>           \otimes \sum_{k=1}^{27}\textbf{F}_{ij}^k
>       +\sum_{k=1}^{27}\delta^k
>           \otimes \sum_{i<j} \textbf{F}_{ij}^k
>       \right)  \\
>    &=& -\frac{1}{2}\left(
>        \sum_{i=1}^N\textbf{r}_i \otimes \textbf{F}_i
>        +\sum_{k=1}^{27}\delta^k  \otimes \textbf{F}^k
>        \right),
> \end{eqnarray}
> where the new $\textbf{F}^k$ is defined implicitely.
>
>
>
>
> /Jason
>
> Quoting Jason de Joannis <jdejoan at emory.edu>:
>
>> Hi David,
>>
>> Yes, I have a rectangular box. The debug file does print out all the fshift
>> contributions. But the bottom line is that when these are all
>> totaled and compared to the N-particle xshift[i]*f[i] calculation,
>> things should match up.
>>
>> On a related note, but not one likely to resolve this situation,
>> what is the meaning of "we must in the implementation double the
>> term containing the shift delta-i" on page 182 of the manual? The
>> equivalent statement is not present on page 1709 of the Gromacs05
>> paper and I don't see the sense of it.
>>
>> Thanks.
>>
>> /Jason
>>
>> Quoting David van der Spoel <spoel at xray.bmc.uu.se>:
>>
>>> Jason de Joannis wrote:
>>>> Let me revive an old topic concerning the fshift correction
>>>> to the virial. This term is added up in the calc_vir function and
>>>> I believe it is equivalent to the second term in Eq(2) of the 2005
>>>> Gromacs paper or Eq. B.11 of the manual. Since that term is
>>>> rather simple it should be easy to check with the following
>>>> snippet of code:
>>>>
>>>>  clear_mat(virtest);
>>>>  for (n=start; n<start+homenr; n++)
>>>>    for (i=0;i<DIM;i++) for (j=0;j<DIM;j++)
>>>>      virtest[i][j] -= 0.25*box[i][i]*graph->ishift[n][i]*f[n][j];
>>>>
>>>> Unfortunately I am not getting the same number for the trace of the
>>>> virial tensor. Any suggestions would be appreciated.
>>>>
>>>> /Jason
>>>
>>> Do you have a rectangular box? Otherwise you need to use box[i][j].
>>>
>>> Have you run mdrun with -debug? It will print temp variables to mdrun.log.
>>>
>>> --
>>> David.
>>> ________________________________________________________________________
>>> David van der Spoel, PhD, Assoc. Prof., Molecular Biophysics group,
>>> Dept. of Cell and Molecular Biology, Uppsala University.
>>> Husargatan 3, Box 596,  	75124 Uppsala, Sweden
>>> phone:	46 18 471 4205		fax: 46 18 511 755
>>> 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.
>>>
>>>
>>>
>>
>>
>>
>> --
>> \ Jason de Joannis  \
>> \ Emory University  \
>>  \ jdejoan at emory.edu \
>>   \ 404-402-1332      \
>>
>>
>> _______________________________________________
>> 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.
>>
>>
>>
>
>
>
> --
> \ Jason de Joannis  \
> \ Emory University  \
>  \ jdejoan at emory.edu \
>   \ 404-402-1332      \
>
>
> _______________________________________________
> 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.
>
>
>

--
\ Jason de Joannis  \
\ Emory University  \
\ jdejoan at emory.edu \
\ 404-402-1332      \