
Hmmm. An absolute difference is: BOOST_CHECK_CLOSE( x, y, 1e-5 ); True?? so wouldn't a relative difference be: BOOST_CHECK_CLOSE( x / y, 1, 1e-5); or equivalently BOOST_CHECK_CLOSE( x, y, abs(y) * 1e-5); or maybe even BOOST_CHECK_CLOSE( x, y, max(abs(x),abs(y)) * 1e-5); ??? -glenn Hugo Duncan wrote:
Hi,
Just to chime in with my problems using BOOST_CHECK_CLOSE ...
I always have problems when checking for small numbers or zero. I write something like BOOST_CHECK_CLOSE(0,x,1e-5) and start wondering why it fails, then rewrite the test using an epsilon value.
When I know the value is going to be near zero this is ok, but sometimes tests are written for computed values. A possible solution would be to have a check that uses the maximum of a relative and an absolute tolerance.
Hugo
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost