On 6/3/2011 1:55 AM, Gennadiy Rozental wrote:
Edward Diener
writes: I am trying to understand the tolerance value passed as the last parameter to the BOOST_XXX_CLOSE and BOOST_XXX_CLOSE_FRACTION macros. The doc says that for the former the value is percentage units while for the latter it is the fraction of absolute values being compared. But in each case there are two values, not just one. Which of the two values are used to determine the tolerance amount in each case ? If both values are being used in each case, how is the tolerance amount computed from the tolerance value passed ?
These are using strict check:
|a-b|/|a|< tolerance and |a-b|/|b|< tolerance
You can get weak check if you want (or instead of and above) by using close_at_tolerance predicate directly.
As I understand your answer, the first case above above refers to CLOSE and the second case above to CLOSE_FRACTION. Can you add that to the docs of both so that everyone can better understand it ? Thanks !