[gmx-users] Re: g_hbond modification

Erik Marklund erikm at xray.bmc.uu.se
Mon Nov 8 22:26:13 CET 2010

Hi, Robin.

I think it could be extracted using the -hbm and -hbn output (pretty 
much everything can). Write a python script that reads the files and 
checks which donors don't participate in hbonds at each frame.

Alternatively, if you want to hack gmx_hbond.c, i suggest the following:
Use the t_donors struct in (hb->d in gmx_hbond()) to create an bolean 
array with one element per donor (or donor+H depending on what you want 
to know in the end). Then set each element to TRUE whenever that donor 
is acting as a hydrogen bond donor. At the end of each frame just go 
through the array and write the number of non-donors to file. Clear the 
array and attack next frame.


Robin C. Underwood skrev 2010-11-08 22.10:
> Thanks for the prompt reply Justin, but I'm still not convinced that I can
> extract the information I seek from the g_hbond program without modification.
> I realize this wasn't clear in my initial message: I would like to know how many
> OH donors are not participating in ANY hydrogen bonds.
> If I calculate the number of non-hydrogen bound OH donors as the difference
> between the number of pairs that meet the distance requirement, and the actual
> number of hydrogen bonds (column 3 minus column 2 in hbnum), then I would be
> over-counting, as this does not exclude pairs with OH donors that are also
> included in a hydrogen bond with another O acceptor.
> Robin
> Quoting "Robin C. Underwood"<rcunderw at purdue.edu>:
>> I would like to modify the g_hbond code (or preferably, know how to
>> implement
>> g_hbond if it is already capable) to count the number of non-hydrogen bound
>> water OH donors in a simulation. I define a non-hydrogen bound donor as one
>> that
>> does not meet the distance requirement, or one that may meet the distance
>> requirement for a hydrogen bond, but does not meet the angle requirement.
>> An inferred value of non-hydrogen bound OH donors is not exact because there
>> is
>> not a rigorously defined maximum value for the number of hydrogen bonds per
>> water, (e.g. a single OH donor may qualify as part of a hydrogen bond at two
>> adjacent water's O-acceptor sites, making the maximum possible number of
>> hydrogen bonds for the water of this particular OH donor greater than 4).
>> Is there a way to implement g_hbond to do this? If not, any specific
>> information
>> on what to consider, and how to modify the g_hbond source code to count
>> non-hydrogen bound water OH donors is greatly appreciated.
>> Robin
>> -- 
>> Robin C. Underwood
>> Chemistry Department
>> 560 Oval Drive
>> West Lafayette, IN 47907

Erik Marklund, PhD student
Dept. of Cell and Molecular Biology, Uppsala University.
Husargatan 3, Box 596,    75124 Uppsala, Sweden
phone:    +46 18 471 4537        fax: +46 18 511 755
erikm at xray.bmc.uu.se    http://folding.bmc.uu.se/

More information about the gromacs.org_gmx-users mailing list