diff options
Diffstat (limited to 'src/elementaryFunctions/floor/testFloatFloor.c')
-rw-r--r-- | src/elementaryFunctions/floor/testFloatFloor.c | 48 |
1 files changed, 26 insertions, 22 deletions
diff --git a/src/elementaryFunctions/floor/testFloatFloor.c b/src/elementaryFunctions/floor/testFloatFloor.c index 1b171893..df49ee0d 100644 --- a/src/elementaryFunctions/floor/testFloatFloor.c +++ b/src/elementaryFunctions/floor/testFloatFloor.c @@ -18,25 +18,25 @@ static void sfloorsTest(void) { assert ((fabs( sfloors(-2) - (-2))/fabs(sfloors(-2)))<1e-16); assert ((fabs( sfloors(-1.9f) - (-2))/fabs(sfloors(-1.9f)))<1e-16); - assert ((fabs( sfloors(-1.8f) - (-2))/fabs(sfloors(-1.9f)))<1e-16); - assert ((fabs( sfloors(-1.7f) - (-2))/fabs(sfloors(-1.9f)))<1e-16); - assert ((fabs( sfloors(-1.6f) - (-2))/fabs(sfloors(-1.9f)))<1e-16); - assert ((fabs( sfloors(-1.5f) - (-2))/fabs(sfloors(-1.9f)))<1e-16); - assert ((fabs( sfloors(-1.4f) - (-2))/fabs(sfloors(-1.9f)))<1e-16); - assert ((fabs( sfloors(-1.3f) - (-2))/fabs(sfloors(-1.9f)))<1e-16); - assert ((fabs( sfloors(-1.2f) - (-2))/fabs(sfloors(-1.9f)))<1e-16); - assert ((fabs( sfloors(-1.1f) - (-2))/fabs(sfloors(-1.9f)))<1e-16); - assert ((fabs( sfloors(-1.0f) - (-1))/fabs(sfloors(-1.9f)))<1e-16); - assert ((fabs( sfloors(-0.9f) - (-1))/fabs(sfloors(-1.9f)))<1e-16); - assert ((fabs( sfloors(1.0f) - (1))/fabs(sfloors(1.9f)))<1e-16); - assert ((fabs( sfloors(1.1f) - (1))/fabs(sfloors(1.9f)))<1e-16); - assert ((fabs( sfloors(1.2f) - (1))/fabs(sfloors(1.9f)))<1e-16); - assert ((fabs( sfloors(1.3f) - (1))/fabs(sfloors(1.9f)))<1e-16); - assert ((fabs( sfloors(1.4f) - (1))/fabs(sfloors(1.9f)))<1e-16); - assert ((fabs( sfloors(1.5f) - (1))/fabs(sfloors(1.9f)))<1e-16); - assert ((fabs( sfloors(1.6f) - (1))/fabs(sfloors(1.9f)))<1e-16); - assert ((fabs( sfloors(1.7f) - (1))/fabs(sfloors(1.9f)))<1e-16); - assert ((fabs( sfloors(1.8f) - (1))/fabs(sfloors(1.9f)))<1e-16); + assert ((fabs( sfloors(-1.8f) - (-2))/fabs(sfloors(-1.8f)))<1e-16); + assert ((fabs( sfloors(-1.7f) - (-2))/fabs(sfloors(-1.7f)))<1e-16); + assert ((fabs( sfloors(-1.6f) - (-2))/fabs(sfloors(-1.6f)))<1e-16); + assert ((fabs( sfloors(-1.5f) - (-2))/fabs(sfloors(-1.5f)))<1e-16); + assert ((fabs( sfloors(-1.4f) - (-2))/fabs(sfloors(-1.4f)))<1e-16); + assert ((fabs( sfloors(-1.3f) - (-2))/fabs(sfloors(-1.3f)))<1e-16); + assert ((fabs( sfloors(-1.2f) - (-2))/fabs(sfloors(-1.2f)))<1e-16); + assert ((fabs( sfloors(-1.1f) - (-2))/fabs(sfloors(-1.1f)))<1e-16); + assert ((fabs( sfloors(-1.0f) - (-1))/fabs(sfloors(-1.0f)))<1e-16); + assert ((fabs( sfloors(-0.9f) - (-1))/fabs(sfloors(-0.9f)))<1e-16); + assert ((fabs( sfloors(1.0f) - (1))/fabs(sfloors(1.0f)))<1e-16); + assert ((fabs( sfloors(1.1f) - (1))/fabs(sfloors(1.1f)))<1e-16); + assert ((fabs( sfloors(1.2f) - (1))/fabs(sfloors(1.2f)))<1e-16); + assert ((fabs( sfloors(1.3f) - (1))/fabs(sfloors(1.3f)))<1e-16); + assert ((fabs( sfloors(1.4f) - (1))/fabs(sfloors(1.4f)))<1e-16); + assert ((fabs( sfloors(1.5f) - (1))/fabs(sfloors(1.5f)))<1e-16); + assert ((fabs( sfloors(1.6f) - (1))/fabs(sfloors(1.6f)))<1e-16); + assert ((fabs( sfloors(1.7f) - (1))/fabs(sfloors(1.7f)))<1e-16); + assert ((fabs( sfloors(1.8f) - (1))/fabs(sfloors(1.8f)))<1e-16); assert ((fabs( sfloors(1.9f) - (1))/fabs(sfloors(1.9f)))<1e-16); assert ((fabs( sfloors(2.0f) - (2))/fabs(sfloors(2.0f)))<1e-16); } @@ -107,7 +107,9 @@ static void sflooraTest(void) { sfloora(in,10,out); - for (i=0;i<10;i++) assert(fabs(out[i]-res[i]) <1e-16); + for (i=0;i<10;i++) + if (out[i]!=0) assert(fabs(out[i]-res[i])/fabs(out[i]) <1e-16); + else assert(fabs(out[i]-res[i]) <1e-16); } static void cflooraTest(void) { @@ -122,8 +124,10 @@ static void cflooraTest(void) { cfloora(in,10,out); for (i=0;i<10;i++){ - assert(fabs(creals(out[i])-resR[i]) <1e-16); - assert(fabs(cimags(out[i])-resI[i]) <1e-16); + if (creals(out[i])!=0) assert(fabs(creals(out[i])-resR[i])/fabs(creals(out[i])) <1e-16); + else assert(fabs(creals(out[i])-resR[i]) <1e-16); + if (cimags(out[i])!=0) assert(fabs(cimags(out[i])-resI[i])/fabs(cimags(out[i])) <1e-16); + else assert(fabs(cimags(out[i])-resI[i]) <1e-16); } } |