Class template close_at_tolerance
boost::math::fpc::close_at_tolerance — Predicate for comparing floating point numbers.
Synopsis
Description
Этот предикат используется для сравнения чисел с плавающей точкой. Кроме того, сравнение дает максимальную связанную дифференциацию, которая может быть использована для создания подробного сообщения об ошибке. Методы сравнения плавающих точек подробно описаны в документации. Метод выбирается усилителем::math::fpc::strength given at construction.
close_at_tolerance
public
construct/copy/destruct
- <
template<typenameToleranceType>
explicitclose_at_tolerance(ToleranceTypetolerance,
fpc::strengthfpc_strength=FPC_STRONG);
>
close_at_tolerance
public member functions
- <
FPTfraction_tolerance()const;
>Возвращение толерантности. - <
fpc::strengthstrength()const;
>Возвращает метод сравнения. - <
FPTtested_rel_diff()const;
>Возвращает несостоявшуюся фракцию. - <
booloperator()(FPTleft,FPTright)const;
>Сравнение двух чисел с плавающей точкой a и b таково, что их «левая» относительная разница |a-b |/a и/или «правая» относительная разница |a-b |/b не превышает заданной относительной (фракционной) толерантности.
То, что сообщается<tested_rel_diff
>в случае неудачи, зависит от метода сравнения:
для<FPC_STRONG:
>макс двух фракций
для<FPC_WEAK:
>мин из двух фракций Обоснование заключается в том, чтобы сообщить о допуске к установке, чтобы сделать тест-пасс.
Параметры: | <left > | первое число с плавающей точкой для сравнения | <right > | второе число с плавающей точкой для сравнения |
|