Go to the documentation of this file.
6 #ifndef CoinFloatEqual_H
7 #define CoinFloatEqual_H
50 inline bool operator()(
const double f1,
const double f2)
const
124 inline bool operator()(
const double f1,
const double f2)
const
134 double tol = (fabs(f1) > fabs(f2)) ? fabs(f1) : fabs(f2);
136 return (fabs(f1 - f2) <=
epsilon_ * (1 + tol));
CoinRelFltEq()
Default constructor.
double epsilon_
Equality tolerance.
bool CoinIsnan(double val)
checks if a double value is not a number
CoinAbsFltEq()
Default constructor.
CoinAbsFltEq(const double epsilon)
Alternate constructor with epsilon as a parameter.
Equality to an absolute tolerance.
virtual ~CoinRelFltEq()
Destructor.
CoinRelFltEq & operator=(const CoinRelFltEq &rhs)
Assignment.
virtual ~CoinAbsFltEq()
Destructor.
CoinRelFltEq(const CoinRelFltEq &src)
Copy constructor.
double epsilon_
Base equality tolerance.
bool operator()(const double f1, const double f2) const
Compare function.
bool operator()(const double f1, const double f2) const
Compare function.
CoinRelFltEq(const double epsilon)
Alternate constructor with epsilon as a parameter.
Equality to a scaled tolerance.
CoinAbsFltEq(const CoinAbsFltEq &src)
Copy constructor.
CoinAbsFltEq & operator=(const CoinAbsFltEq &rhs)
Assignment.
bool CoinFinite(double val)
checks if a double value is finite (not infinity and not NaN)