diff options
author | torset | 2009-02-27 13:59:12 +0000 |
---|---|---|
committer | torset | 2009-02-27 13:59:12 +0000 |
commit | 6e7f75a3a916ae7b7b6145c0badad7b649265c0f (patch) | |
tree | d6150181ae1536cf65d4a1a873345a7e7e8e8f50 /src | |
parent | 05fb6a62c83ae7cea37aa2795e61697b3560f135 (diff) | |
download | scilab2c-6e7f75a3a916ae7b7b6145c0badad7b649265c0f.tar.gz scilab2c-6e7f75a3a916ae7b7b6145c0badad7b649265c0f.tar.bz2 scilab2c-6e7f75a3a916ae7b7b6145c0badad7b649265c0f.zip |
change precision for tests : put it to 3e-16 for double and 3e-6 for float
Diffstat (limited to 'src')
19 files changed, 114 insertions, 119 deletions
diff --git a/src/matrixOperations/chol/testDoubleChol.c b/src/matrixOperations/chol/testDoubleChol.c index 58754a8b..d54eeec2 100644 --- a/src/matrixOperations/chol/testDoubleChol.c +++ b/src/matrixOperations/chol/testDoubleChol.c @@ -55,7 +55,7 @@ static void dcholaTest(void){ for (i=0;i<49;i++)printf("out2[i]= %f\n",out2[i]); dchola(in,size,out); for (i=0;i<9;i++){ - if (out[i]>1e-16) assert( (fabs(out[i]-res[i]) / fabs(out[i])) <1e-15); + if (out[i]>1e-16) assert( (fabs(out[i]-res[i]) / fabs(out[i])) <3e-16); } } @@ -92,9 +92,9 @@ static void zcholaTest(void){ for (i=0;i<9;i++) printf("indice : %d out : %f+%f *i\n",i,zreals(out[i]),zimags(out[i])); for (i=0;i<9;i++){ if (zreals(out[i])>1e-16) - assert( (fabs(zreals(out[i])-resR[i]) / fabs(zreals(out[i]))) <1e-15); + assert( (fabs(zreals(out[i])-resR[i]) / fabs(zreals(out[i]))) <3e-16); if (zimags(out[i])>1e-16) - assert( (fabs(zimags(out[i])-resI[i]) / fabs(zimags(out[i]))) <1e-15); + assert( (fabs(zimags(out[i])-resI[i]) / fabs(zimags(out[i]))) <3e-16); } free(in); } @@ -124,7 +124,7 @@ static void zcholaTest(void){ for (i=0;i<9;i++){ if (zreals(out[i])>1e-16) - assert( (fabs(zreals(out[i])-resR[i]) / fabs(zreals(out[i]))) <1e-14); + assert( (fabs(zreals(out[i])-resR[i]) / fabs(zreals(out[i]))) <3e-16); if (zimags(out[i])>1e-16) assert( (fabs(zimags(out[i])-resI[i]) / fabs(zimags(out[i]))) <1e-16); } diff --git a/src/matrixOperations/determ/testDoubleDeterm.c b/src/matrixOperations/determ/testDoubleDeterm.c index 45372375..b8462514 100644 --- a/src/matrixOperations/determ/testDoubleDeterm.c +++ b/src/matrixOperations/determ/testDoubleDeterm.c @@ -378,13 +378,13 @@ static void ddetermaTest(void){ out8=ddeterma(in8,8); out10=ddeterma(in10,10); - assert((fabs(out2-res2)/fabs(out2))<1e-6); - assert((fabs(out3-res3)/fabs(out3))<1e-7); - assert((fabs(out4-res4)/fabs(out4))<1e-6); - assert((fabs(out5-res5)/fabs(out5))<1e-6); - assert((fabs(out6-res6)/fabs(out6))<1e-6); - assert((fabs(out8-res8)/fabs(out8))<1e-6); - assert((fabs(out10-res10)/fabs(out10))<1e-6); + assert((fabs(out2-res2)/fabs(out2))<3e-16); + assert((fabs(out3-res3)/fabs(out3))<3e-16); + assert((fabs(out4-res4)/fabs(out4))<3e-16); + assert((fabs(out5-res5)/fabs(out5))<3e-16); + assert((fabs(out6-res6)/fabs(out6))<3e-16); + assert((fabs(out8-res8)/fabs(out8))<3e-16); + assert((fabs(out10-res10)/fabs(out10))<3e-16); } static void zdetermaTest(void){ @@ -415,26 +415,26 @@ static void zdetermaTest(void){ out10=zdeterma(in10,10); - assert((fabs(zreals(out2)-resR2)/fabs(zreals(out2)))<1e-15); - assert((fabs(zimags(out2)-resI2)/fabs(zimags(out2)))<1e-15); + assert((fabs(zreals(out2)-resR2)/fabs(zreals(out2)))<3e-16); + assert((fabs(zimags(out2)-resI2)/fabs(zimags(out2)))<3e-16); - assert((fabs(zreals(out3)-resR3)/fabs(zreals(out3)))<1e-15); + assert((fabs(zreals(out3)-resR3)/fabs(zreals(out3)))<3e-16); assert((fabs(zimags(out3)-resI3)/fabs(zimags(out3)))<1e-16); - assert((fabs(zreals(out4)-resR4)/fabs(zreals(out4)))<1e-14); - assert((fabs(zimags(out4)-resI4)/fabs(zimags(out4)))<1e-14); + assert((fabs(zreals(out4)-resR4)/fabs(zreals(out4)))<3e-16); + assert((fabs(zimags(out4)-resI4)/fabs(zimags(out4)))<3e-16); - assert((fabs(zreals(out5)-resR5)/fabs(zreals(out5)))<1e-15); - assert((fabs(zimags(out5)-resI5)/fabs(zimags(out5)))<1e-15); + assert((fabs(zreals(out5)-resR5)/fabs(zreals(out5)))<3e-16); + assert((fabs(zimags(out5)-resI5)/fabs(zimags(out5)))<3e-16); - assert((fabs(zreals(out6)-resR6)/fabs(zreals(out6)))<1e-14); - assert((fabs(zimags(out6)-resI6)/fabs(zimags(out6)))<1e-13); + assert((fabs(zreals(out6)-resR6)/fabs(zreals(out6)))<3e-16); + assert((fabs(zimags(out6)-resI6)/fabs(zimags(out6)))<3e-16); - assert((fabs(zreals(out8)-resR8)/fabs(zreals(out8)))<1e-15); - assert((fabs(zimags(out8)-resI8)/fabs(zimags(out8)))<1e-15); + assert((fabs(zreals(out8)-resR8)/fabs(zreals(out8)))<3e-16); + assert((fabs(zimags(out8)-resI8)/fabs(zimags(out8)))<3e-16); - assert((fabs(zreals(out10)-resR10)/fabs(zreals(out10)))<1e-14); - assert((fabs(zimags(out10)-resI10)/fabs(zimags(out10)))<1e-14); + assert((fabs(zreals(out10)-resR10)/fabs(zreals(out10)))<3e-16); + assert((fabs(zimags(out10)-resI10)/fabs(zimags(out10)))<3e-16); } static int determTest(void){ diff --git a/src/matrixOperations/determ/testFloatDeterm.c b/src/matrixOperations/determ/testFloatDeterm.c index 76de97fc..d429d020 100644 --- a/src/matrixOperations/determ/testFloatDeterm.c +++ b/src/matrixOperations/determ/testFloatDeterm.c @@ -381,11 +381,11 @@ static void sdetermaTest(void){ assert((fabs(out2-res2)/fabs(out2))<1e-6); assert((fabs(out3-res3)/fabs(out3))<1e-7); - assert((fabs(out4-res4)/fabs(out4))<1e-5); + assert((fabs(out4-res4)/fabs(out4))<3e-6); assert((fabs(out5-res5)/fabs(out5))<1e-6); assert((fabs(out6-res6)/fabs(out6))<1e-6); assert((fabs(out8-res8)/fabs(out8))<1e-6); - assert((fabs(out10-res10)/fabs(out10))<1e-5); + assert((fabs(out10-res10)/fabs(out10))<3e-6); } @@ -426,16 +426,16 @@ static void cdetermaTest(void){ assert((fabs(creals(out4)-resR4)/fabs(creals(out4)))<1e-6); assert((fabs(cimags(out4)-resI4)/fabs(cimags(out4)))<1e-6); - assert((fabs(creals(out5)-resR5)/fabs(creals(out5)))<1e-5); + assert((fabs(creals(out5)-resR5)/fabs(creals(out5)))<3e-6); assert((fabs(cimags(out5)-resI5)/fabs(cimags(out5)))<1e-6); assert((fabs(creals(out6)-resR6)/fabs(creals(out6)))<1e-6); - assert((fabs(cimags(out6)-resI6)/fabs(cimags(out6)))<1e-5); + assert((fabs(cimags(out6)-resI6)/fabs(cimags(out6)))<3e-6); assert((fabs(creals(out8)-resR8)/fabs(creals(out8)))<1e-6); assert((fabs(cimags(out8)-resI8)/fabs(cimags(out8)))<1e-6); - assert((fabs(creals(out10)-resR10)/fabs(creals(out10)))<1e-5); + assert((fabs(creals(out10)-resR10)/fabs(creals(out10)))<3e-6); assert((fabs(cimags(out10)-resI10)/fabs(cimags(out10)))<1e-6); } diff --git a/src/matrixOperations/dist/testDoubleDist.c b/src/matrixOperations/dist/testDoubleDist.c index 06f633b7..0ec69657 100644 --- a/src/matrixOperations/dist/testDoubleDist.c +++ b/src/matrixOperations/dist/testDoubleDist.c @@ -39,7 +39,7 @@ static void ddistaTest(void){ out=ddista(in3,in4,2,3); printf("%f\n",out); - assert(fabs(out-result2) / fabs(out) <1e-15); + assert(fabs(out-result2) / fabs(out) <3e-16); } static void zdistsTest(void){ @@ -91,11 +91,11 @@ static void zdistaTest(void){ out=zdista(in3Cpx,in4Cpx,2,3); printf("%f\n",out); - assert(fabs(out-result2) / fabs(out) <1e-15); + assert(fabs(out-result2) / fabs(out) <3e-16); out=zdista(in5Cpx,in6Cpx,5,3); printf("%f\n",out); - assert(fabs(out-result3) / fabs(out) <1e-15); + assert(fabs(out-result3) / fabs(out) <3e-16); } diff --git a/src/matrixOperations/division/testMatrixLDivision.c b/src/matrixOperations/division/testMatrixLDivision.c index ad5bb9bd..feae48c3 100644 --- a/src/matrixOperations/division/testMatrixLDivision.c +++ b/src/matrixOperations/division/testMatrixLDivision.c @@ -287,7 +287,7 @@ static void dldivmaTest ( void ) { printf ( "\t\t %d out : %e\tresult : %e\tassert : %e \n" , i , out[i] , result[i] , fabs ( out[i] - result[i] ) / fabs( out[i]) ) ; - assert ( fabs ( out[i] - result[i] ) / fabs( out[i]) < 1e-15 ) ; + assert ( fabs ( out[i] - result[i] ) / fabs( out[i]) < 3e-16 ) ; } } diff --git a/src/matrixOperations/division/testMatrixRDivision.c b/src/matrixOperations/division/testMatrixRDivision.c index 2fb086a7..e8548bda 100644 --- a/src/matrixOperations/division/testMatrixRDivision.c +++ b/src/matrixOperations/division/testMatrixRDivision.c @@ -257,7 +257,7 @@ static void drdivmaTest ( void ) printf ( "\t\t %d out : %e result : %e assert : %e \n" , i , out[i] , result[i] , fabs ( out[i] - result[i] ) / fabs( out[i]) ) ; - assert ( fabs ( out[i] - result[i] ) / fabs( out[i]) < 1e-15 ) ; + assert ( fabs ( out[i] - result[i] ) / fabs( out[i]) < 3e-16 ) ; } } @@ -442,13 +442,13 @@ static void zrdivmaTest ( void ){ if ( zreals(out[i]) < 1e-16 && zreals (Result[i]) < 1e-18 ) assert ( 1 ) ; else - assert ( fabs( zreals(out[i]) - zreals (Result[i]) ) / fabs (zreals (out[i])) < 1e-15 ); + assert ( fabs( zreals(out[i]) - zreals (Result[i]) ) / fabs (zreals (out[i])) < 3e-16 ); if ( zimags(out[i]) < 1e-16 && zimags (Result[i]) < 1e-18 ) assert ( 1 ) ; else - assert ( fabs( zimags(out[i]) - zimags (Result[i]) ) / fabs (zimags (out[i])) < 1e-15 ) ; + assert ( fabs( zimags(out[i]) - zimags (Result[i]) ) / fabs (zimags (out[i])) < 3e-16 ) ; } diff --git a/src/matrixOperations/expm/testMatrixExponential.c b/src/matrixOperations/expm/testMatrixExponential.c index 13bf82d5..72586c53 100644 --- a/src/matrixOperations/expm/testMatrixExponential.c +++ b/src/matrixOperations/expm/testMatrixExponential.c @@ -421,14 +421,14 @@ static void sexpmaTest (void ) { for ( i = 0 ; i < LEADDIM*LEADDIM ; i++ ) { printf ( "\t\t %d out : %e\tresult : %e\tassert : %e \n" , i , out[i] , result[i] , fabs ( out[i] - result[i] ) / fabs( out[i]) ) ; - assert ( fabs ( out[i] - result[i] ) / fabs( out[i]) < 1e-5 ) ; + assert ( fabs ( out[i] - result[i] ) / fabs( out[i]) < 3e-6 ) ; } sexpma(mon_test,out_mon_test,3); for ( i = 0 ; i < 9 ; i++ ) { printf ( "\t\t %d out : %e\tresult : %e\tassert : %e \n" , i , out[i] , result[i] , fabs ( out[i] - result[i] ) / fabs( out[i]) ) ; - assert ( fabs ( out_mon_test[i] - result_mon_test[i] ) / fabs( out_mon_test[i]) < 1e-5 ) ; + assert ( fabs ( out_mon_test[i] - result_mon_test[i] ) / fabs( out_mon_test[i]) < 3e-6 ) ; } } @@ -450,7 +450,7 @@ static void dexpmaTest (void ) { for ( i = 0 ; i < LEADDIM*LEADDIM ; i++ ) { printf ( "\t\t %d out : %e\tresult : %e\tassert : %e \n" , i , out[i] , result[i] , fabs ( out[i] - result[i] ) / fabs( out[i]) ) ; - assert ( fabs ( out[i] - result[i] ) / fabs( out[i]) < 1e-14 ) ; + assert ( fabs ( out[i] - result[i] ) / fabs( out[i]) < 3e-16 ) ; } } @@ -483,16 +483,16 @@ static void cexpmaTest ( void) { fabs( creals(out[i]) - creals (Result[i]) ) / fabs (creals (out[i])) , fabs( cimags(out[i]) - cimags (Result[i]) ) / fabs (cimags (out[i]))); - if ( creals(out[i]) < 1e-14 && creals (Result[i]) < 1e-18 ) + if ( creals(out[i]) < 3e-16 && creals (Result[i]) < 1e-18 ) assert ( 1 ) ; else - assert ( fabs( creals(out[i]) - creals (Result[i]) ) / fabs (creals (out[i])) < 1e-4 ); + assert ( fabs( creals(out[i]) - creals (Result[i]) ) / fabs (creals (out[i])) < 3e-6 ); - if ( cimags(out[i]) < 1e-14 && cimags (Result[i]) < 1e-18 ) + if ( cimags(out[i]) < 3e-16 && cimags (Result[i]) < 1e-18 ) assert ( 1 ) ; else - assert ( fabs( cimags(out[i]) - cimags (Result[i]) ) / fabs (cimags (out[i])) < 1e-4 ) ; + assert ( fabs( cimags(out[i]) - cimags (Result[i]) ) / fabs (cimags (out[i])) < 3e-6 ) ; } } @@ -527,16 +527,16 @@ static void zexpmaTest ( void) { fabs( zreals(out[i]) - zreals (Result[i]) ) / fabs (zreals (out[i])) , fabs( zimags(out[i]) - zimags (Result[i]) ) / fabs (zimags (out[i]))); - if ( zreals(out[i]) < 1e-14 && zreals (Result[i]) < 1e-18 ) + if ( zreals(out[i]) < 3e-16 && zreals (Result[i]) < 1e-18 ) assert ( 1 ) ; else - assert ( fabs( zreals(out[i]) - zreals (Result[i]) ) / fabs (zreals (out[i])) < 1e-12 ); + assert ( fabs( zreals(out[i]) - zreals (Result[i]) ) / fabs (zreals (out[i])) < 3e-16 ); - if ( zimags(out[i]) < 1e-14 && zimags (Result[i]) < 1e-18 ) + if ( zimags(out[i]) < 3e-16 && zimags (Result[i]) < 1e-18 ) assert ( 1 ) ; else - assert ( fabs( zimags(out[i]) - zimags (Result[i]) ) / fabs (zimags (out[i])) < 1e-12 ) ; + assert ( fabs( zimags(out[i]) - zimags (Result[i]) ) / fabs (zimags (out[i])) < 3e-16 ) ; } } diff --git a/src/matrixOperations/eye/testMatrixEye.c b/src/matrixOperations/eye/testMatrixEye.c index e47edcf3..a3682743 100644 --- a/src/matrixOperations/eye/testMatrixEye.c +++ b/src/matrixOperations/eye/testMatrixEye.c @@ -45,7 +45,7 @@ static void deyeaTest ( void ) if ( in[i] < 1e-14 && result < 1e-14 ) assert(1); else - assert ( fabs ( in[i] - result) / fabs( in[i]) < 1e-14 ) ; + assert ( fabs ( in[i] - result) / fabs( in[i]) < 3e-16 ) ; } deyea ( in2, ROWS, COLS ); @@ -65,7 +65,7 @@ static void deyeaTest ( void ) if ( in[i * ROWS + j] < 1e-14 && result < 1e-14 ) assert(1); else - assert ( fabs ( in[i * ROWS + j] - result) / fabs( in[i * ROWS + j]) < 1e-14 ) ; + assert ( fabs ( in[i * ROWS + j] - result) / fabs( in[i * ROWS + j]) < 3e-16 ) ; } } @@ -86,7 +86,7 @@ static void deyeaTest ( void ) if ( in3[j * ROWS2 + i] < 1e-14 && result < 1e-14 ) assert(1); else - assert ( fabs ( in3[j * ROWS2 + i] - result) / fabs( in3[j * ROWS2 + i]) < 1e-14 ) ; + assert ( fabs ( in3[j * ROWS2 + i] - result) / fabs( in3[j * ROWS2 + i]) < 3e-16 ) ; } } @@ -185,7 +185,7 @@ static void zeyeaTest ( void ) if ( zreals( in[i]) < 1e-14 && zreals( result) < 1e-14 ) assert(1); else - assert ( fabs ( zreals(in[i]) - zreals(result)) / fabs( zreals(in[i])) < 1e-14 ) ; + assert ( fabs ( zreals(in[i]) - zreals(result)) / fabs( zreals(in[i])) < 3e-16) ; if ( zimags ( in[i]) < 1e-14 ) assert (1); diff --git a/src/matrixOperations/infiniteNorm/testMatrixInfiniteNorm.c b/src/matrixOperations/infiniteNorm/testMatrixInfiniteNorm.c index d76472f8..8dc4c7ff 100644 --- a/src/matrixOperations/infiniteNorm/testMatrixInfiniteNorm.c +++ b/src/matrixOperations/infiniteNorm/testMatrixInfiniteNorm.c @@ -240,7 +240,7 @@ static void dinfnormaTest(void) { out = dinfnorma ( in , LEADDIM , LEADDIM ); printf ( "\t\t out : %.16f\tresult : %.16f\tassert : %e \n" , out , result , fabs ( out - result ) / fabs( out) ) ; - assert ( fabs ( out - result ) / fabs( out) < 1e-14 ) ; + assert ( fabs ( out - result ) / fabs( out) < 3e-16 ) ; @@ -260,7 +260,7 @@ static void zinfnormaTest(void) { out = zinfnorma ( in , LEADDIM , LEADDIM ); printf ( "\t\t out : %.16f\tresult : %.16f\tassert : %e \n" , out , result , fabs ( out - result ) / fabs( out) ) ; - assert ( fabs ( out - result ) / fabs( out) < 1e-14 ) ; + assert ( fabs ( out - result ) / fabs( out) < 3e-16 ) ; @@ -280,7 +280,7 @@ static void cinfnormaTest(void) { out = cinfnorma ( in , LEADDIM , LEADDIM ); printf ( "\t\t out : %.16f\tresult : %.16f\tassert : %e \n" , out , result , fabs ( out - result ) / fabs( out) ) ; - assert ( fabs ( out - result ) / fabs( out) < 1e-14 ) ; + assert ( fabs ( out - result ) / fabs( out) < 3e-6 ) ; diff --git a/src/matrixOperations/inversion/testMatrixInversion.c b/src/matrixOperations/inversion/testMatrixInversion.c index fa7f349c..733efe0b 100644 --- a/src/matrixOperations/inversion/testMatrixInversion.c +++ b/src/matrixOperations/inversion/testMatrixInversion.c @@ -409,7 +409,7 @@ static void sinvermaTest (void) { printf ( "\t\t %d out : %e\tresult : %e\tassert : %e \n" , i , out[i] , result[i] , fabs ( out[i] - result[i] ) / fabs( out[i]) ) ; - assert ( fabs ( out[i] - result[i] ) / fabs( out[i]) < 1e-4 ) ; + assert ( fabs ( out[i] - result[i] ) / fabs( out[i]) < 3e-6 ) ; } @@ -433,7 +433,7 @@ static void dinvermaTest (void) { printf ( "\t\t %d out : %e\tresult : %e\tassert : %e \n" , i , out[i] , result[i] , fabs ( out[i] - result[i] ) / fabs( out[i]) ) ; - assert ( fabs ( out[i] - result[i] ) / fabs( out[i]) < 1e-13 ) ; + assert ( fabs ( out[i] - result[i] ) / fabs( out[i]) < 3e-16 ) ; } @@ -472,13 +472,13 @@ static void cinvermaTest (void) if ( creals(out[i]) < 1e-6 && creals (Result[i]) < 1e-6 ) assert ( 1 ) ; else - assert ( fabs( creals(out[i]) - creals (Result[i]) ) / fabs (creals (out[i])) < 1e-4 ); + assert ( fabs( creals(out[i]) - creals (Result[i]) ) / fabs (creals (out[i])) < 3e-6 ); if ( cimags(out[i]) < 1e-6 && cimags (Result[i]) < 1e-6 ) assert ( 1 ) ; else - assert ( fabs( cimags(out[i]) - cimags (Result[i]) ) / fabs (cimags (out[i])) < 1e-4 ) ; + assert ( fabs( cimags(out[i]) - cimags (Result[i]) ) / fabs (cimags (out[i])) < 3e-6 ) ; } } @@ -516,13 +516,13 @@ static void zinvermaTest (void) if ( zreals(out[i]) < 1e-14 && zreals (Result[i]) < 1e-18 ) assert ( 1 ) ; else - assert ( fabs( zreals(out[i]) - zreals (Result[i]) ) / fabs (zreals (out[i])) < 1e-12 ); + assert ( fabs( zreals(out[i]) - zreals (Result[i]) ) / fabs (zreals (out[i])) < 3e-16 ); if ( zimags(out[i]) < 1e-14 && zimags (Result[i]) < 1e-18 ) assert ( 1 ) ; else - assert ( fabs( zimags(out[i]) - zimags (Result[i]) ) / fabs (zimags (out[i])) < 1e-12 ) ; + assert ( fabs( zimags(out[i]) - zimags (Result[i]) ) / fabs (zimags (out[i])) < 3e-16 ) ; } } diff --git a/src/matrixOperations/logm/testDoubleLogm.c b/src/matrixOperations/logm/testDoubleLogm.c index fd4a6ab9..cf0092b1 100644 --- a/src/matrixOperations/logm/testDoubleLogm.c +++ b/src/matrixOperations/logm/testDoubleLogm.c @@ -60,20 +60,20 @@ static void dlogmaTest(void){ dlogma(inHer,4,outHer); for(i=0;i<4;i++) { - assert( (fabs(out4[i]-result4R[i]) / fabs(out4[i])) <1e-15); + assert( (fabs(out4[i]-result4R[i]) / fabs(out4[i])) <3e-16); } for(i=0;i<9;i++) { - assert( (fabs(out9[i]-result9R[i]) / fabs(out9[i])) <1e-14); + assert( (fabs(out9[i]-result9R[i]) / fabs(out9[i])) <3e-16); } for(i=0;i<16;i++) { - assert( (fabs(out16[i]-result16R[i]) / fabs(out16[i])) <1e-13); + assert( (fabs(out16[i]-result16R[i]) / fabs(out16[i])) <3e-16); } for(i=0;i<16;i++) { - assert( (fabs(outHer[i]-resultHerR[i]) / fabs(outHer[i])) <1e-12); + assert( (fabs(outHer[i]-resultHerR[i]) / fabs(outHer[i])) <3e-16); } } @@ -140,13 +140,13 @@ static void zlogmaTest(void){ for(i=0;i<4;i++) { - assert( fabs(zreals(out4[i])-result4R[i]) / fabs(zreals(out4[i])) <1e-15); - assert( fabs(zimags(out4[i])-result4I[i]) / fabs(zimags(out4[i])) <1e-15); + assert( fabs(zreals(out4[i])-result4R[i]) / fabs(zreals(out4[i])) <3e-16); + assert( fabs(zimags(out4[i])-result4I[i]) / fabs(zimags(out4[i])) <3e-16); } for(i=0;i<9;i++) { - assert( fabs(zreals(out9[i])-result9R[i]) / fabs(zreals(out9[i])) <1e-14); - if (zimags(out9[i])>1e-15) assert( fabs(zimags(out9[i])-result9I[i]) / fabs(zimags(out9[i])) <1e-16); + assert( fabs(zreals(out9[i])-result9R[i]) / fabs(zreals(out9[i])) <3e-16); + if (zimags(out9[i])>3e-16) assert( fabs(zimags(out9[i])-result9I[i]) / fabs(zimags(out9[i])) <1e-16); else assert(1); } @@ -165,13 +165,13 @@ static void zlogmaTest(void){ fabs(zreals(out16[i])-result16R[i]) / fabs(zreals(out16[i])), fabs(zimags(out16[i])-result16I[i]) / fabs(zimags(out16[i]))); - assert( fabs(zreals(out16[i])-result16R[i]) / fabs(zreals(out16[i])) <1e-13); - assert( fabs(zimags(out16[i])-result16I[i]) / fabs(zimags(out16[i])) <1); + assert( fabs(zreals(out16[i])-result16R[i]) / fabs(zreals(out16[i])) <3e-16); + assert( fabs(zimags(out16[i])-result16I[i]) / fabs(zimags(out16[i])) <3e-16); } for(i=0;i<16;i++) { - assert( fabs(zreals(outHer[i])-resultHerR[i]) / fabs(zreals(outHer[i])) <1e-12); - assert( fabs(zimags(outHer[i])-resultHerI[i]) / fabs(zimags(outHer[i])) <1e-13); + assert( fabs(zreals(outHer[i])-resultHerR[i]) / fabs(zreals(outHer[i])) <3e-16); + assert( fabs(zimags(outHer[i])-resultHerI[i]) / fabs(zimags(outHer[i])) <3e-16); } } diff --git a/src/matrixOperations/logm/testFloatLogm.c b/src/matrixOperations/logm/testFloatLogm.c index 1c582629..afd503a6 100644 --- a/src/matrixOperations/logm/testFloatLogm.c +++ b/src/matrixOperations/logm/testFloatLogm.c @@ -161,7 +161,7 @@ static void clogmaTest(void){ fabs(cimags(out16[i])-result16I[i]) / fabs(cimags(out16[i]))); assert( fabs(creals(out16[i])-result16R[i]) / fabs(creals(out16[i])) <1e-6); - assert( fabs(cimags(out16[i])-result16I[i]) / fabs(cimags(out16[i])) <1e-5); + assert( fabs(cimags(out16[i])-result16I[i]) / fabs(cimags(out16[i])) <3e-6); } for(i=0;i<16;i++) { diff --git a/src/matrixOperations/magnitude/testDoubleMagnitude.c b/src/matrixOperations/magnitude/testDoubleMagnitude.c index fd433c35..14189d2b 100644 --- a/src/matrixOperations/magnitude/testDoubleMagnitude.c +++ b/src/matrixOperations/magnitude/testDoubleMagnitude.c @@ -43,7 +43,7 @@ static void zmagnsTest(void){ for (i=0;i<8;i++) { in = DoubleComplex(inR[i],inI[i]); out=zmagns(in); - assert( fabs(out-res[i])/fabs(out)<1e-15); + assert( fabs(out-res[i])/fabs(out)<3e-16); } } diff --git a/src/matrixOperations/multiplication/testDoubleMatrixMultiplication.c b/src/matrixOperations/multiplication/testDoubleMatrixMultiplication.c index ecee5428..60768eb3 100644 --- a/src/matrixOperations/multiplication/testDoubleMatrixMultiplication.c +++ b/src/matrixOperations/multiplication/testDoubleMatrixMultiplication.c @@ -325,9 +325,9 @@ static void dmulma2Test(void){ assert( (fabs(out1[0]-result1[0]) / fabs(out1[0])) <1e-16); - for (i=0;i<4;i++) assert( (fabs(out2[i]-result2[i]) / fabs(out2[i])) <1e-15); - for (i=0;i<16;i++) assert( (fabs(out4[i]-result4[i]) / fabs(out4[i])) <1e-15); - for (i=0;i<64;i++) assert( (fabs(out8[i]-result8[i]) / fabs(out8[i])) <1e-15); + for (i=0;i<4;i++) assert( (fabs(out2[i]-result2[i]) / fabs(out2[i])) <3e-16); + for (i=0;i<16;i++) assert( (fabs(out4[i]-result4[i]) / fabs(out4[i])) <3e-16); + for (i=0;i<64;i++) assert( (fabs(out8[i]-result8[i]) / fabs(out8[i])) <3e-16); for (i=0;i<256;i++) assert( (fabs(out16[i]-result16[i]) / fabs(out16[i])) <1e-16); } diff --git a/src/matrixOperations/ones/testMatrixOnes.c b/src/matrixOperations/ones/testMatrixOnes.c index 582b528a..7668f30b 100644 --- a/src/matrixOperations/ones/testMatrixOnes.c +++ b/src/matrixOperations/ones/testMatrixOnes.c @@ -38,7 +38,7 @@ static void donesaTest ( void ) if ( in[i] < 1e-14 && result < 1e-14 ) assert(1); else - assert ( fabs ( in[i] - result) / fabs( in[i]) < 1e-14 ) ; + assert ( fabs ( in[i] - result) / fabs( in[i]) < 3e-16 ) ; } } @@ -86,7 +86,7 @@ static void zonesaTest ( void ) if ( zreals( in[i]) < 1e-14 && zreals( result) < 1e-14 ) assert(1); else - assert ( fabs ( zreals(in[i]) - zreals(result)) / fabs( zreals(in[i])) < 1e-14 ) ; + assert ( fabs ( zreals(in[i]) - zreals(result)) / fabs( zreals(in[i])) < 1e-16 ) ; if ( zimags ( in[i]) < 1e-14 ) assert (1); diff --git a/src/matrixOperations/powm/testDoublePowm.c b/src/matrixOperations/powm/testDoublePowm.c index 1eb5a5e6..a81baf68 100644 --- a/src/matrixOperations/powm/testDoublePowm.c +++ b/src/matrixOperations/powm/testDoublePowm.c @@ -40,14 +40,11 @@ static void dpowmaTest(void){ dpowma(in2, 4, expand2, out2); for (i=0;i<4;i++) { - assert( fabs(out1[i]-result1R[i]) / fabs(out1[i]) <1e-15); + assert( fabs(out1[i]-result1R[i]) / fabs(out1[i]) <3e-16); } -/* - FIXME : assert 1e-11 maybe due to spec2 -*/ for (i=0;i<16;i++) { - assert( fabs(out2[i]-result2R[i]) / fabs(out2[i]) <1e-14); + assert( fabs(out2[i]-result2R[i]) / fabs(out2[i]) <3e-16); } } @@ -74,8 +71,8 @@ static void zpowmaTest(void){ for (i=0;i<9;i++) printf("out[%d] = %f+%f*i\n",i,zreals(out[i]),zimags(out[i])); for (i=0;i<9;i++){ - assert( (fabs(zreals(out[i])-resultR[i])/ fabs(zreals(out[i])) ) <1e-14); - assert( (fabs(zimags(out[i])-resultI[i])/ fabs(zimags(out[i])) ) <1e-14); + assert( (fabs(zreals(out[i])-resultR[i])/ fabs(zreals(out[i])) ) <3e-16); + assert( (fabs(zimags(out[i])-resultI[i])/ fabs(zimags(out[i])) ) <3e-16); } } @@ -116,8 +113,8 @@ static void zpowmaTest(void){ zpowma(in2, 4, DoubleComplex(expand2,0), out2); for (i=0;i<4;i++) { - assert( fabs(zreals(out1[i])-result1R[i]) / fabs(zreals(out1[i])) <1e-15); - assert( fabs(zimags(out1[i])-result1I[i]) / fabs(zimags(out1[i])) <1e-15); + assert( fabs(zreals(out1[i])-result1R[i]) / fabs(zreals(out1[i])) <3e-16); + assert( fabs(zimags(out1[i])-result1I[i]) / fabs(zimags(out1[i])) <3e-16); } /* @@ -125,8 +122,8 @@ static void zpowmaTest(void){ */ for (i=0;i<16;i++) { printf("out[%d] = %1.16f+%1.16f*i --- result = %1.16f+%1.16f*i\n",i,zreals(out2[i]),zimags(out2[i]),result2R[i],result2I[i]); - assert( fabs(zreals(out2[i])-result2R[i]) / fabs(zreals(out2[i])) <1e-14); - assert( fabs(zimags(out2[i])-result2I[i]) / fabs(zimags(out2[i])) <1e-11); + assert( fabs(zreals(out2[i])-result2R[i]) / fabs(zreals(out2[i])) <3e-16); + assert( fabs(zimags(out2[i])-result2I[i]) / fabs(zimags(out2[i])) <3e-16); } } diff --git a/src/matrixOperations/powm/testFloatPowm.c b/src/matrixOperations/powm/testFloatPowm.c index dcb9049b..9ac66a57 100644 --- a/src/matrixOperations/powm/testFloatPowm.c +++ b/src/matrixOperations/powm/testFloatPowm.c @@ -51,7 +51,6 @@ static void spowmaTest(void){ } -/* FIXME : assert 1e-4 */ static void cpowmaTest(void){ @@ -74,7 +73,7 @@ static void cpowmaTest(void){ for (i=0;i<9;i++) printf("out[%d] = %f+%f*i\n",i,creals(out[i]),cimags(out[i])); for (i=0;i<9;i++){ - assert( (fabs(creals(out[i])-resultR[i])/ fabs(creals(out[i])) ) <1e-4); + assert( (fabs(creals(out[i])-resultR[i])/ fabs(creals(out[i])) ) <3e-6); assert( (fabs(cimags(out[i])-resultI[i])/ fabs(cimags(out[i])) ) <1e-6); } } diff --git a/src/matrixOperations/spec/testDoubleSpec.c b/src/matrixOperations/spec/testDoubleSpec.c index c5422ca3..0e392dea 100644 --- a/src/matrixOperations/spec/testDoubleSpec.c +++ b/src/matrixOperations/spec/testDoubleSpec.c @@ -29,7 +29,7 @@ static void dspecaTest(void){ dspeca(in,2,out); for(i=0;i<2;i++){ - if (out[i]>1e-16) assert( fabs(out[i]-resultR[i]) / fabs(out[i]) <1e-15); + if (out[i]>1e-16) assert( fabs(out[i]-resultR[i]) / fabs(out[i]) <3e-16); else assert(1); } @@ -70,7 +70,7 @@ static void zspecaTest(void){ zspeca(in,2,out); for(i=0;i<2;i++){ - if (zreals(out[i])>1e-16) assert( fabs(zreals(out[i])-resultR[i]) / fabs(zreals(out[i])) <1e-15); + if (zreals(out[i])>1e-16) assert( fabs(zreals(out[i])-resultR[i]) / fabs(zreals(out[i])) <3e-16); else assert(1); if (zimags(out[i])>1e-16) assert( fabs(zimags(out[i])-resultI[i]) / fabs(zimags(out[i])) <1e-16); else assert(1); @@ -79,18 +79,18 @@ static void zspecaTest(void){ zspeca(in2,2,out); for(i=0;i<2;i++){ - if (zreals(out[i])>1e-16) assert( fabs(zreals(out[i])-result2R[i]) / fabs(zreals(out[i])) <1e-15); + if (zreals(out[i])>1e-16) assert( fabs(zreals(out[i])-result2R[i]) / fabs(zreals(out[i])) <3e-16); else assert(1); - if (zimags(out[i])>1e-16) assert( fabs(zimags(out[i])-result2I[i]) / fabs(zimags(out[i])) <1e-15); + if (zimags(out[i])>1e-16) assert( fabs(zimags(out[i])-result2I[i]) / fabs(zimags(out[i])) <3e-16); else assert(1); } zspeca(in3,4,out2); for(i=0;i<4;i++){ - if (zreals(out2[i])>1e-16) assert( fabs(zreals(out2[i])-result3R[i]) / fabs(zreals(out2[i])) <1e-15); + if (zreals(out2[i])>1e-16) assert( fabs(zreals(out2[i])-result3R[i]) / fabs(zreals(out2[i])) <3e-16); else assert(1); - if (zimags(out2[i])>1e-16) assert( fabs(zimags(out2[i])-result3I[i]) / fabs(zimags(out2[i])) <1e-14); + if (zimags(out2[i])>1e-16) assert( fabs(zimags(out2[i])-result3I[i]) / fabs(zimags(out2[i])) <3e-16); else assert(1); } diff --git a/src/matrixOperations/spec2/testDoubleSpec2.c b/src/matrixOperations/spec2/testDoubleSpec2.c index 39550ca1..2ab998cf 100644 --- a/src/matrixOperations/spec2/testDoubleSpec2.c +++ b/src/matrixOperations/spec2/testDoubleSpec2.c @@ -1,5 +1,4 @@ /* - * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab * Copyright (C) 2008 - INRIA - Arnaud TORSET * * This file must be used under the terms of the CeCILL. @@ -38,11 +37,11 @@ static void dspec2aTest(void){ int i; dspec2a(in3,3,out3,out4); for(i=0;i<9;i++){ - if (out3[i]>1e-16) assert( fabs(out3[i]-resultValues3R[i]) / fabs(out3[i]) <1e-15); + if (out3[i]>1e-16) assert( fabs(out3[i]-resultValues3R[i]) / fabs(out3[i]) <3e-16); else assert(1); } for(i=0;i<9;i++){ - if (out4[i]>1e-16) assert( fabs(out4[i]-resultVectors3R[i]) / fabs(out4[i]) <1e-15); + if (out4[i]>1e-16) assert( fabs(out4[i]-resultVectors3R[i]) / fabs(out4[i]) <3e-16); else assert(1); } @@ -50,11 +49,11 @@ static void dspec2aTest(void){ dspec2a(in,2,out1,out2); for(i=0;i<4;i++) printf("%f\n",out1[i]); for(i=0;i<4;i++){ - if (out1[i]>1e-16) assert( fabs(out1[i]-resultValuesR[i]) / fabs(out1[i]) <1e-15); + if (out1[i]>1e-16) assert( fabs(out1[i]-resultValuesR[i]) / fabs(out1[i]) <3e-16); else assert(1); } for(i=0;i<4;i++){ - if (out2[i]>1e-16) assert( fabs(out2[i]-resultVectorsR[i]) / fabs(out2[i]) <1e-15); + if (out2[i]>1e-16) assert( fabs(out2[i]-resultVectorsR[i]) / fabs(out2[i]) <3e-16); else assert(1); } @@ -66,7 +65,7 @@ static void dspec2aTest(void){ else assert(1); } for(i=0;i<4;i++){ - if (out2[i]>1e-16) assert( fabs(out2[i]-resultVectors2R[i]) / fabs(out2[i]) <1e-15); + if (out2[i]>1e-16) assert( fabs(out2[i]-resultVectors2R[i]) / fabs(out2[i]) <3e-16); else assert(1); } @@ -178,14 +177,14 @@ static void zspec2aTest(void){ for(i=0;i<4;i++){ - if (zreals(out1[i])>1e-16) assert( fabs(zreals(out1[i])-resultValuesR[i]) / fabs(zreals(out1[i])) <1e-15); + if (zreals(out1[i])>1e-16) assert( fabs(zreals(out1[i])-resultValuesR[i]) / fabs(zreals(out1[i])) <3e-16); else assert(1); if (zimags(out1[i])>1e-16) assert( fabs(zimags(out1[i])-resultValuesI[i]) / fabs(zimags(out1[i])) <1e-16); else assert(1); } for(i=0;i<4;i++){ - if (zreals(out2[i])>1e-16) assert( fabs(zreals(out2[i])-resultVectorsR[i]) / fabs(zreals(out2[i])) <1e-15); + if (zreals(out2[i])>1e-16) assert( fabs(zreals(out2[i])-resultVectorsR[i]) / fabs(zreals(out2[i])) <3e-16); else assert(1); if (zimags(out2[i])>1e-16) assert( fabs(zimags(out2[i])-resultVectorsI[i]) / fabs(zimags(out2[i])) <1e-16); else assert(1); @@ -194,16 +193,16 @@ static void zspec2aTest(void){ zspec2a(in2,2,out1,out2); for(i=0;i<4;i++){ - if (zreals(out1[i])>1e-16) assert( fabs(zreals(out1[i])-resultValues2R[i]) / fabs(zreals(out1[i])) <1e-15); + if (zreals(out1[i])>1e-16) assert( fabs(zreals(out1[i])-resultValues2R[i]) / fabs(zreals(out1[i])) <3e-16); else assert(1); - if (zimags(out1[i])>1e-16) assert( fabs(zimags(out1[i])-resultValues2I[i]) / fabs(zimags(out1[i])) <1e-15); + if (zimags(out1[i])>1e-16) assert( fabs(zimags(out1[i])-resultValues2I[i]) / fabs(zimags(out1[i])) <3e-16); else assert(1); } for(i=0;i<4;i++){ - if (zreals(out2[i])>1e-16) assert( fabs(zreals(out2[i])-resultVectors2R[i]) / fabs(zreals(out2[i])) <1e-15); + if (zreals(out2[i])>1e-16) assert( fabs(zreals(out2[i])-resultVectors2R[i]) / fabs(zreals(out2[i])) <3e-16); else assert(1); - if (zimags(out2[i])>1e-16) assert( fabs(zimags(out2[i])-resultVectors2I[i]) / fabs(zimags(out2[i])) <1e-15); + if (zimags(out2[i])>1e-16) assert( fabs(zimags(out2[i])-resultVectors2I[i]) / fabs(zimags(out2[i])) <3e-16); else assert(1); } @@ -211,31 +210,31 @@ static void zspec2aTest(void){ zspec2a(in3,4,out3,out4); for(i=0;i<16;i++){ - if (zreals(out3[i])>1e-16) assert( fabs(zreals(out3[i])-resultValues3R[i]) / fabs(zreals(out3[i])) <1e-14); + if (zreals(out3[i])>1e-16) assert( fabs(zreals(out3[i])-resultValues3R[i]) / fabs(zreals(out3[i])) <3e-16); else assert(1); - if (zimags(out3[i])>1e-16) assert( fabs(zimags(out3[i])-resultValues3I[i]) / fabs(zimags(out3[i])) <1e-15); + if (zimags(out3[i])>1e-16) assert( fabs(zimags(out3[i])-resultValues3I[i]) / fabs(zimags(out3[i])) <3e-16); else assert(1); } for(i=0;i<16;i++){ - if (zreals(out4[i])>1e-16) assert( fabs(zreals(out4[i])-resultVectors3R[i]) / fabs(zreals(out4[i])) <1e-14); + if (zreals(out4[i])>1e-16) assert( fabs(zreals(out4[i])-resultVectors3R[i]) / fabs(zreals(out4[i])) <3e-16); else assert(1); - if (zimags(out4[i])>1e-16) assert( fabs(zimags(out4[i])-resultVectors3I[i]) / fabs(zimags(out4[i])) <1e-14); + if (zimags(out4[i])>1e-16) assert( fabs(zimags(out4[i])-resultVectors3I[i]) / fabs(zimags(out4[i])) <3e-16); else assert(1); } - /* FIXME : assert : 1e-13 maybe du to little values like 0.001... */ + /* FIXME : assert : 3e-16 maybe du to little values like 0.001... */ zspec2a(in4,7,out5,out6); for(i=0;i<49;i++){ - if (zreals(out5[i])>1e-16) assert( fabs(zreals(out5[i])-resultValues4R[i]) / fabs(zreals(out5[i])) <1e-14); + if (zreals(out5[i])>1e-16) assert( fabs(zreals(out5[i])-resultValues4R[i]) / fabs(zreals(out5[i])) <3e-16); else assert(1); - if (zimags(out5[i])>1e-16) assert( fabs(zimags(out5[i])-resultValues4I[i]) / fabs(zimags(out5[i])) <1e-13); + if (zimags(out5[i])>1e-16) assert( fabs(zimags(out5[i])-resultValues4I[i]) / fabs(zimags(out5[i])) <3e-16); else assert(1); } for(i=0;i<49;i++){ - if (zreals(out6[i])>1e-16) assert( fabs(zreals(out6[i])-resultVectors4R[i]) / fabs(zreals(out6[i])) <1e-13); + if (zreals(out6[i])>1e-16) assert( fabs(zreals(out6[i])-resultVectors4R[i]) / fabs(zreals(out6[i])) <3e-16); else assert(1); - if (zimags(out6[i])>1e-16) assert( fabs(zimags(out6[i])-resultVectors4I[i]) / fabs(zimags(out6[i])) <1e-13); + if (zimags(out6[i])>1e-16) assert( fabs(zimags(out6[i])-resultVectors4I[i]) / fabs(zimags(out6[i])) <3e-16); else assert(1); } |