24 #ifndef _UTILS_DOUBLE_CMP_ 25 #define _UTILS_DOUBLE_CMP_ 61 #define GM_DOUBLECMP_RELTOL (1.0e-8) 64 #define GM_DOUBLECMP_ABSTOL (1.0E-12) 74 double diff = fabs(a-b);
80 return diff <= relTol * (a > b ? a : b);
93 inline bool isZero(
double a,
double absTol)
95 return fabs(a) < absTol;
105 return !
equal(a, b, relTol, absTol);
115 return (a < b) && !
equal(a, b, relTol, absTol);
125 return (a < b) ||
equal(a, b, relTol, absTol);
135 return (a > b) && !
equal(a, b, relTol, absTol);
145 return (a > b) ||
equal(a, b, relTol, absTol);
#define GM_DOUBLECMP_ABSTOL
Tolerância absoluta entre valores para comparar valores próximos de zero.
Definition: gmDoubleCmp.h:64
bool gte(double a, double b, double relTol=GM_DOUBLECMP_RELTOL, double absTol=GM_DOUBLECMP_ABSTOL)
Funcao para comparar se um número real é maior ou igual a outro, usando uma tolerância recebida como ...
Definition: gmDoubleCmp.h:143
bool equal(double a, double b, double relTol=GM_DOUBLECMP_RELTOL, double absTol=GM_DOUBLECMP_ABSTOL)
Funcao para comparar se dois números reais são iguais usando uma tolerância recebida como parâmetro.
Definition: gmDoubleCmp.h:71
bool lte(double a, double b, double relTol=GM_DOUBLECMP_RELTOL, double absTol=GM_DOUBLECMP_ABSTOL)
Funcao para comparar se um número real é menor ou igual a outro, usando uma tolerância recebida como ...
Definition: gmDoubleCmp.h:123
bool gt(double a, double b, double relTol=GM_DOUBLECMP_RELTOL, double absTol=GM_DOUBLECMP_ABSTOL)
Funcao para comparar se um número real é maior que o outro, usando uma tolerância recebida como parâm...
Definition: gmDoubleCmp.h:133
bool nequal(double a, double b, double relTol=GM_DOUBLECMP_RELTOL, double absTol=GM_DOUBLECMP_ABSTOL)
Funcao para comparar se dois números reais são diferentes usando uma tolerância recebida como parâmet...
Definition: gmDoubleCmp.h:103
#define GM_DOUBLECMP_RELTOL
Tolerância relativa entre valores = 0.000001%.
Definition: gmDoubleCmp.h:61
bool isZero(double a, double absTol)
Funcao para comparar se o valor a é ou não igual a zero dada uma tolerância absoluta.
Definition: gmDoubleCmp.h:93
Agrupa rotinas para comparação de valores double.
Definition: gmDoubleCmp.h:57
bool lt(double a, double b, double relTol=GM_DOUBLECMP_RELTOL, double absTol=GM_DOUBLECMP_ABSTOL)
Funcao para comparar se um número real é menor que o outro, usando uma tolerância recebida como parâm...
Definition: gmDoubleCmp.h:113