Boost logo

Boost :

From: Glenn Schrader (gschrad_at_[hidden])
Date: 2007-02-16 12:36:15


An absolute difference is:

    BOOST_CHECK_CLOSE( x, y, 1e-5 );


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);



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:

Boost list run by bdawes at, gregod at, cpdaniel at, john at