[gmx-developers] stuff in double precision
lindahl at cbr.su.se
Mon Feb 5 19:37:06 CET 2007
On Feb 5, 2007, at 7:20 PM, David van der Spoel wrote:
> If you do an operation in C in which a double is involved, then as
> far as I know everything is converted to double, possibly unless
> you use brackets.
Formally yes, but modern compilers relax this unless you enforce IEEE-
conformance at the cost of performance.
> The problem David experienced is just due to an in a sense ill-
> posed problem, since looking for 1 in 10^6 energy differences (i.e.
> subtracting large numbers) is asking for trouble (think diverging
> trajectories due to round off with different average energies).
> This is why people generally shy away from absolute free energies.
> A very simple workaround would be to always use the free energy
> loops, also for "reference no-free energy simulations", then you
> are running the same code twice.
That might actually be a smarter option. I'll see if I can find my
once-upon-a-time-smart-optimization to skip the free energy loop when
lambda==0 and disable it.
More information about the gromacs.org_gmx-developers