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));
bool CoinIsnan(double val)
checks if a double value is not a number
double epsilon_
Base equality tolerance.
CoinRelFltEq(const double epsilon)
Alternate constructor with epsilon as a parameter.
bool operator()(const double f1, const double f2) const
Compare function.
CoinAbsFltEq(const double epsilon)
Alternate constructor with epsilon as a parameter.
Equality to a scaled tolerance.
CoinAbsFltEq()
Default constructor.
double epsilon_
Equality tolerance.
CoinRelFltEq()
Default constructor.
CoinRelFltEq & operator=(const CoinRelFltEq &rhs)
Assignment.
Equality to an absolute tolerance.
CoinRelFltEq(const CoinRelFltEq &src)
Copy constructor.
virtual ~CoinAbsFltEq()
Destructor.
CoinAbsFltEq & operator=(const CoinAbsFltEq &rhs)
Assignment.
bool operator()(const double f1, const double f2) const
Compare function.
bool CoinFinite(double val)
checks if a double value is finite (not infinity and not NaN)
virtual ~CoinRelFltEq()
Destructor.
CoinAbsFltEq(const CoinAbsFltEq &src)
Copy constructor.