[gmx-users] Re: RE: problem with g_bar

Tom Kirchner tomkirch at mis.mpg.de
Tue Mar 20 09:23:38 CET 2012


Hi Berk,

Thanks a lot for your answer.

I changed the line and recompiled Gromacs, sadly I got this error:

gmx_bar.c: In function "read_bar_xvg":
gmx_bar.c:2052:5: error: incompatible type for argument 1 of 
"gmx_within_tol"
../../include/maths.h:125:1: note: expected "double" but argument is of 
type "real *"
make[3]: *** [gmx_bar.lo] Error 1

Best,
Tom

On 03/20/2012 03:15 AM, gmx-users-request at gromacs.org wrote:
> ------------------------------ Message: 3 Date: Mon, 19 Mar 2012 
> 18:34:31 +0100 From: Berk Hess <gmx3 at hotmail.com> Subject: RE: 
> [gmx-users] problem with g_bar To: Discussion list for GROMACS users 
> <gmx-users at gromacs.org> Message-ID: 
> <COL113-W32C019BA58913FEC173E168E420 at phx.gbl> Content-Type: 
> text/plain; charset="iso-8859-1" Hi, Yes, there is a problem with 
> different temperature variables being single and double precision. 
> Does the one line change below fix the problem? Cheers, Berk - if ( ( 
> *temp != barsim->temp) && (*temp > 0) ) + if ( 
> !gmx_within_tol(temp,barsim->temp,GMX_FLOAT_EPS) && (*temp > 0) )
>> >  Date: Mon, 19 Mar 2012 13:57:51 +0100
>> >  From:tomkirch at mis.mpg.de
>> >  To:gmx-users at gromacs.org
>> >  Subject: [gmx-users] problem with g_bar
>> >  
>> >  Dear all,
>> >  
>> >  Recently I posted my problem with g_bar on this mailing list but got no
>> >  solution for it. After additional testing I decided to send an enhanced
>> >  description of my problem.
>> >  
>> >  I am doing Free Energy calculation. The dhdl values are put in separate
>> >  .xvg files. The routine g_bar is then started using:
>> >  
>> >  g_bar -b 100 -f md_*.xvg -o -oi -oh
>> >  
>> >  With the result:
>> >  
>> >  Program g_bar, VERSION 4.5.5
>> >  Source code file: .../src/gromacs-4.5.5/src/tools/gmx_bar.c, line: 2054
>> >  
>> >  Fatal error:
>> >  Temperature in file md_0.05.xvg different from earlier files or setting
>> >  
>> >  
>> >  Checking the header of all .xvg files showed the same line for the
>> >  temperature for all files:
>> >  
>> >  @ subtitle "T = 298.15 (K), \xl\f{} = 0.025"
>> >  
>> >  Changing the temperature manually to any integer (but still with .0) let
>> >  g_bar run fine.
>> >  
>> >  sed -i 's/T\ \=\ 298.15/T\ \=\ 298.0/g' md*
>> >  
>> >  Do you have any suggestions what's wrong here?
>> >  
>> >  I'm not that familiar with C, but my suggestion would be an error with
>> >  floating point arithmetic in line 2052 of gmx_bar.c
>> >  
>> >        if ( ( *temp != barsim->temp)&&  (*temp>  0) )
>> >  
>> >  where *temp and barsim->temp are compared. Maybe it has something to do
>> >  with the input as long double (%lf) and statement "real *temp" in the
>> >  function header?
>> >  
>> >  I appreciate any hints.
>> >  
>> >  Best regards
>> >  Tom




More information about the gromacs.org_gmx-users mailing list