diff options
author | torset | 2008-11-14 14:48:17 +0000 |
---|---|---|
committer | torset | 2008-11-14 14:48:17 +0000 |
commit | 05cd5ae384d6d8b34d263061fe87749c919dcbb5 (patch) | |
tree | e41dc1b7a9c2fddd6870cd891cd085dd284d153c /src | |
parent | 30bc67048ea86d33cc07606eed4c396daf9abd41 (diff) | |
download | scilab2c-05cd5ae384d6d8b34d263061fe87749c919dcbb5.tar.gz scilab2c-05cd5ae384d6d8b34d263061fe87749c919dcbb5.tar.bz2 scilab2c-05cd5ae384d6d8b34d263061fe87749c919dcbb5.zip |
Change tests file
Diffstat (limited to 'src')
-rw-r--r-- | src/elementaryFunctions/acos/Makefile.am | 1 | ||||
-rw-r--r-- | src/elementaryFunctions/acos/Makefile.in | 1 | ||||
-rw-r--r-- | src/elementaryFunctions/acos/testFloatAcos.c | 179 |
3 files changed, 127 insertions, 54 deletions
diff --git a/src/elementaryFunctions/acos/Makefile.am b/src/elementaryFunctions/acos/Makefile.am index a09873e5..6d62772d 100644 --- a/src/elementaryFunctions/acos/Makefile.am +++ b/src/elementaryFunctions/acos/Makefile.am @@ -38,6 +38,7 @@ HEAD = ../includes/acos.h \ #### check_INCLUDES = -I $(top_builddir)/elementaryFunctions/includes \ + -I $(top_builddir)/includes \ -I $(top_builddir)/type check_LDADD = $(top_builddir)/type/libDoubleComplex.la \ diff --git a/src/elementaryFunctions/acos/Makefile.in b/src/elementaryFunctions/acos/Makefile.in index 7ace41fb..69b0cfce 100644 --- a/src/elementaryFunctions/acos/Makefile.in +++ b/src/elementaryFunctions/acos/Makefile.in @@ -241,6 +241,7 @@ HEAD = ../includes/acos.h \ # Checking Part #### check_INCLUDES = -I $(top_builddir)/elementaryFunctions/includes \ + -I $(top_builddir)/includes \ -I $(top_builddir)/type check_LDADD = $(top_builddir)/type/libDoubleComplex.la \ diff --git a/src/elementaryFunctions/acos/testFloatAcos.c b/src/elementaryFunctions/acos/testFloatAcos.c index b96ec925..1a78e2ca 100644 --- a/src/elementaryFunctions/acos/testFloatAcos.c +++ b/src/elementaryFunctions/acos/testFloatAcos.c @@ -11,73 +11,142 @@ */ #include "testAcos.h" +#include <math.h> +#include <stdio.h> +#include <assert.h> void sacossTest(void) { - printf(">> Float scalar\n"); - printf("sacoss(0) = %f\n", sacoss((float) 0)); - printf("sacoss(PI) = %f\n", sacoss(FPI)); - printf("sacoss(PI/2) = %f\n", sacoss(FPI/2)); - printf("sacoss(PI/3) = %f\n", sacoss(FPI/3)); - printf("sacoss(PI/4) = %f\n", sacoss(FPI/4)); - printf("sacoss(PI/6) = %f\n", sacoss(FPI/6)); - printf("sacoss(-PI) = %f\n", sacoss(-FPI)); - printf("sacoss(-PI/2) = %f\n", sacoss(-FPI/2)); - printf("sacoss(-PI/3) = %f\n", sacoss(-FPI/3)); - printf("sacoss(-PI/4) = %f\n", sacoss(-FPI/4)); - printf("sacoss(-PI/6) = %f\n", sacoss(-FPI/6)); -} + int i=0; -void cacossTest(void) { - floatComplex pi_pi = FloatComplex(FPI, FPI); - floatComplex pi_2_pi_2 = FloatComplex(FPI/2, FPI/2); - floatComplex pi_2_pi_3 = FloatComplex(FPI/2, FPI/3); - floatComplex pi_2_pi_4 = FloatComplex(FPI/2, FPI/4); - floatComplex out; - - printf(">> Float Complex scalar\n"); - out = cacoss(pi_pi); - printf("cacoss(PI + I*PI) = %f + I * %f\n", creals(out), cimags(out)); - out = cacoss(pi_2_pi_2); - printf("cacoss(PI/2 + I*PI/2) = %f + I * %f\n", creals(out), cimags(out)); - out = cacoss(pi_2_pi_3); - printf("cacoss(PI/2 + I*PI/3) = %f + I * %f\n", creals(out), cimags(out)); - out = cacoss(pi_2_pi_4); - printf("cacoss(PI/2 + I*PI/4) = %f + I * %f\n", creals(out), cimags(out)); -} + float Test1[100] = {0.3616361f,0.2922267f,0.5664249f,0.4826472f,0.3321719f,0.5935095f,0.5015342f,0.4368588f, +0.2693125f,0.6325745f,0.4051954f,0.9184708f,0.0437334f,0.4818509f,0.2639556f,0.4148104f, +0.2806498f,0.1280058f,0.7783129f,0.2119030f,0.1121355f,0.6856896f,0.1531217f,0.6970851f, +0.8415518f,0.4062025f,0.4094825f,0.8784126f,0.1138360f,0.1998338f,0.5618661f,0.5896177f, +0.6853980f,0.8906225f,0.5042213f,0.3493615f,0.3873779f,0.9222899f,0.9488184f,0.3435337f, +0.3760119f,0.7340941f,0.2615761f,0.4993494f,0.2638578f,0.5253563f,0.5376230f,0.1199926f, +0.2256303f,0.6274093f,0.7608433f,0.0485566f,0.6723950f,0.2017173f,0.3911574f,0.8300317f, +0.5878720f,0.4829179f,0.2232865f,0.8400886f,0.1205996f,0.2855364f,0.8607515f,0.8494102f, +0.5257061f,0.9931210f,0.6488563f,0.9923191f,0.0500420f,0.7485507f,0.4104059f,0.6084526f, +0.8544211f,0.0642647f,0.8279083f,0.9262344f,0.5667211f,0.5711639f,0.8160110f,0.0568928f, +0.5595937f,0.1249340f,0.7279222f,0.2677766f,0.5465335f,0.9885408f,0.7395657f,0.0037173f, +0.5900573f,0.3096467f,0.2552206f,0.6251879f,0.1157417f,0.6117004f,0.6783956f,0.3320095f, +0.0258710f,0.5174468f,0.3916873f,0.2413538f}; + + float Result1[100] = {1.2007742f,1.274242f,0.9686351f,1.0671216f,1.232191f,0.9353839f,1.0454251f,1.1186927f,1.2981173f, +0.8859235f,1.1536038f,0.4066000f,1.5270489f,1.0680306f,1.3036754f,1.1430619f,1.2863253f, +1.4424383f,0.6788221f,1.3572745f,1.4584245f,0.8152457f,1.4170699f,0.7994724f,0.5706467f, +1.1525019f,1.1489095f,0.4982660f,1.4567131f,1.3696081f,0.9741564f,0.9402109f,0.8156462f, +0.4720841f,1.0423163f,1.2139067f,1.1730106f,0.3968325f,0.3213230f,1.2201193f,1.1853078f, +0.7464647f,1.3061415f,1.0479487f,1.3037767f,1.0176625f,1.0031809f,1.4505139f,1.3432063f, +0.8925746f,0.7061847f,1.5222206f,0.8333567f,1.3676854f,1.1689075f,0.5916319f,0.9423705f, +1.0668124f,1.3456115f,0.5733499f,1.4499025f,1.2812302f,0.5340522f,0.5559297f,1.0172514f, +0.1173619f,0.8647159f,0.1240222f,1.5207334f,0.7249227f,1.1478972f,0.9166870f,0.5463607f, +1.5064873f,0.5954284f,0.3864991f,0.9682756f,0.9628732f,0.6163202f,1.5138728f,0.9769009f,1.445535f, +0.7555096f,1.2997117f,0.9925771f,0.1515334f,0.7383715f,1.567079f,0.9396665f,1.2559748f,1.3127205f, +0.8954240f,1.4547946f,0.9125881f,0.8252196f,1.2323632f,1.5449224f,1.0269318f,1.1683316f,1.3270356f}; -void sacosaTest(void) { - float out[5]; - float in[5] = {FPI, FPI/2, FPI/3, FPI/4, FPI/6}; - int i = 0; + float Test2[100]={0.9321636f,0.1232699f,0.2865552f,0.0124800f,0.5769405f,0.3938696f,0.6888584f,0.9702322f, +0.8515764f,0.3393304f,0.8772532f,0.1131402f,0.5264128f,0.5297394f,0.9291756f,0.9765430f, +0.6225464f,0.9822583f,0.7542989f,0.5454788f,0.7286016f,0.0252597f,0.4025168f,0.0983132f, +0.2608625f,0.3636342f,0.1746618f,0.9234139f,0.7605141f,0.5640204f,0.3797065f,0.8776226f, +0.8217426f,0.6787058f,0.0822010f,0.2552731f,0.7444457f,0.2269504f,0.6836931f,0.9365073f, +0.5053017f,0.2524815f,0.6818840f,0.2836368f,0.1409486f,0.6759110f,0.4512678f,0.7543029f, +0.1370214f,0.6608241f,0.3890054f,0.7001821f,0.9168006f,0.21229f,0.2697833f,0.3199889f,0.0232180f, +0.7265447f,0.1534059f,0.2355264f,0.0879738f,0.7105954f,0.6888728f,0.6595319f,0.1815116f, +0.3904966f,0.1586905f,0.6240715f,0.6376036f,0.4270489f,0.1071682f,0.2382297f,0.9462947f, +0.4576685f,0.8964479f,0.4438471f,0.8089568f,0.6831799f,0.0340193f,0.2380546f,0.9492012f, +0.2182789f,0.6154688f,0.8313543f,0.7734013f,0.4244191f,0.7262126f,0.7099977f,0.4745746f, +0.9438692f,0.1459649f,0.0714101f,0.6733739f,0.6536925f,0.1996896f,0.6014125f,0.1899375f, +0.2583981f,0.0987874f,0.0619903f}; - printf(">> Float array\n"); - sacosa(in, 5, out); - for (i = 0 ; i < 5 ; ++i) - printf("sacosa(array) = %f\n", out[i]); + float Result2[100]={0.3704526f,1.4472121f,1.280167f,1.558316f,0.9558184f,1.1659586f,0.8108833f,0.2446086f,0.5518112f, +1.2245913f,0.5006866f,1.4574133f,1.0164204f,1.012503f,0.3786200f,0.2170219f,0.8988040f,0.1886498f, +0.7162108f,0.9938360f,0.7545182f,1.5455339f,1.1565317f,1.4723241f,1.3068808f,1.1986301f, +1.3952341f,0.3939139f,0.7066918f,0.9715498f,1.1813173f,0.4999164f,0.6063341f,0.8247973f, +1.4885025f,1.3126661f,0.7310921f,1.3418511f,0.817985f,0.3582631f,1.0410647f,1.3155524f,0.8204611f, +1.2832118f,1.4293768f,0.8285963f,1.1026109f,0.7162046f,1.4333425f,0.8488801f,1.1712446f, +0.7951439f,0.4108027f,1.3568786f,1.2976283f,1.2450785f,1.5475762f,0.7575165f,1.4167823f, +1.3330362f,1.4827086f,0.7804523f,0.8108635f,0.8506004f,1.3882729f,1.1696254f,1.4114321f, +0.8968537f,0.8794129f,1.1295698f,1.463422f,1.3302537f,0.3292202f,1.0954251f,0.4591086f,1.1109091f, +0.6284209f,0.8186880f,1.5367704f,1.330434f,0.3201089f,1.3507459f,0.9078157f,0.5892561f,0.6866071f, +1.1324761f,0.7579997f,0.7813013f,1.0763156f,0.3366420f,1.4243081f,1.4993254f,0.8320334f, +0.8583428f,1.3697552f,0.9255284f,1.3796979f,1.3094327f,1.4718476f,1.5087663f}; + + for(i=0;i<100;i++){ + assert ( ( fabs(sacoss(Test1[i]) - Result1[i]) / fabs(sacoss(Test1[i])) ) < 1e-5); + assert ( ( fabs(sacoss(Test2[i]) - Result2[i]) / fabs(sacoss(Test2[i])) ) < 1e-6); + + } } -void cacosaTest(void) { - floatComplex in[4]; - floatComplex out[4]; - int i = 0; - in[0] = FloatComplex(FPI, FPI); - in[1] = FloatComplex(FPI/2, FPI/2); - in[2] = FloatComplex(FPI/2, FPI/3); - in[3] = FloatComplex(FPI/2, FPI/4); +void dacossTest(void) { + int i=0; - cacosa(in, 4, out); - printf(">> Float Complex Array\n"); - for (i = 0 ; i < 4 ; ++i) - printf("cacosa(array) = %e + I * %e\n", creals(out[i]), cimags(out[i])); -} + double Test1[100] = {0.3616361 ,0.2922267 ,0.5664249 ,0.4826472 ,0.3321719 ,0.5935095 ,0.5015342 ,0.4368588 , +0.2693125 ,0.6325745 ,0.4051954 ,0.9184708 ,0.0437334 ,0.4818509 ,0.2639556 ,0.4148104 , +0.2806498 ,0.1280058 ,0.7783129 ,0.2119030 ,0.1121355 ,0.6856896 ,0.1531217 ,0.6970851 , +0.8415518 ,0.4062025 ,0.4094825 ,0.8784126 ,0.1138360 ,0.1998338 ,0.5618661 ,0.5896177 , +0.6853980 ,0.8906225 ,0.5042213 ,0.3493615 ,0.3873779 ,0.9222899 ,0.9488184 ,0.3435337 , +0.3760119 ,0.7340941 ,0.2615761 ,0.4993494 ,0.2638578 ,0.5253563 ,0.5376230 ,0.1199926 , +0.2256303 ,0.6274093 ,0.7608433 ,0.0485566 ,0.6723950 ,0.2017173 ,0.3911574 ,0.8300317 , +0.5878720 ,0.4829179 ,0.2232865 ,0.8400886 ,0.1205996 ,0.2855364 ,0.8607515 ,0.8494102 , +0.5257061 ,0.9931210 ,0.6488563 ,0.9923191 ,0.0500420 ,0.7485507 ,0.4104059 ,0.6084526 , +0.8544211 ,0.0642647 ,0.8279083 ,0.9262344 ,0.5667211 ,0.5711639 ,0.8160110 ,0.0568928 , +0.5595937 ,0.1249340 ,0.7279222 ,0.2677766 ,0.5465335 ,0.9885408 ,0.7395657 ,0.0037173 , +0.5900573 ,0.3096467 ,0.2552206 ,0.6251879 ,0.1157417 ,0.6117004 ,0.6783956 ,0.3320095 , +0.0258710 ,0.5174468 ,0.3916873 ,0.2413538 }; + + double Result1[100] = {1.2007742 ,1.274242 ,0.9686351 ,1.0671216 ,1.232191 ,0.9353839 ,1.0454251 ,1.1186927 ,1.2981173 , +0.8859235 ,1.1536038 ,0.4066000 ,1.5270489 ,1.0680306 ,1.3036754 ,1.1430619 ,1.2863253 , +1.4424383 ,0.6788221 ,1.3572745 ,1.4584245 ,0.8152457 ,1.4170699 ,0.7994724 ,0.5706467 , +1.1525019 ,1.1489095 ,0.4982660 ,1.4567131 ,1.3696081 ,0.9741564 ,0.9402109 ,0.8156462 , +0.4720841 ,1.0423163 ,1.2139067 ,1.1730106 ,0.3968325 ,0.3213230 ,1.2201193 ,1.1853078 , +0.7464647 ,1.3061415 ,1.0479487 ,1.3037767 ,1.0176625 ,1.0031809 ,1.4505139 ,1.3432063 , +0.8925746 ,0.7061847 ,1.5222206 ,0.8333567 ,1.3676854 ,1.1689075 ,0.5916319 ,0.9423705 , +1.0668124 ,1.3456115 ,0.5733499 ,1.4499025 ,1.2812302 ,0.5340522 ,0.5559297 ,1.0172514 , +0.1173619 ,0.8647159 ,0.1240222 ,1.5207334 ,0.7249227 ,1.1478972 ,0.9166870 ,0.5463607 , +1.5064873 ,0.5954284 ,0.3864991 ,0.9682756 ,0.9628732 ,0.6163202 ,1.5138728 ,0.9769009 ,1.445535 , +0.7555096 ,1.2997117 ,0.9925771 ,0.1515334 ,0.7383715 ,1.567079 ,0.9396665 ,1.2559748 ,1.3127205 , +0.8954240 ,1.4547946 ,0.9125881 ,0.8252196 ,1.2323632 ,1.5449224 ,1.0269318 ,1.1683316 ,1.3270356 }; + double Test2[100]={0.9321636 ,0.1232699 ,0.2865552 ,0.0124800 ,0.5769405 ,0.3938696 ,0.6888584 ,0.9702322 , +0.8515764 ,0.3393304 ,0.8772532 ,0.1131402 ,0.5264128 ,0.5297394 ,0.9291756 ,0.9765430 , +0.6225464 ,0.9822583 ,0.7542989 ,0.5454788 ,0.7286016 ,0.0252597 ,0.4025168 ,0.0983132 , +0.2608625 ,0.3636342 ,0.1746618 ,0.9234139 ,0.7605141 ,0.5640204 ,0.3797065 ,0.8776226 , +0.8217426 ,0.6787058 ,0.0822010 ,0.2552731 ,0.7444457 ,0.2269504 ,0.6836931 ,0.9365073 , +0.5053017 ,0.2524815 ,0.6818840 ,0.2836368 ,0.1409486 ,0.6759110 ,0.4512678 ,0.7543029 , +0.1370214 ,0.6608241 ,0.3890054 ,0.7001821 ,0.9168006 ,0.21229 ,0.2697833 ,0.3199889 ,0.0232180 , +0.7265447 ,0.1534059 ,0.2355264 ,0.0879738 ,0.7105954 ,0.6888728 ,0.6595319 ,0.1815116 , +0.3904966 ,0.1586905 ,0.6240715 ,0.6376036 ,0.4270489 ,0.1071682 ,0.2382297 ,0.9462947 , +0.4576685 ,0.8964479 ,0.4438471 ,0.8089568 ,0.6831799 ,0.0340193 ,0.2380546 ,0.9492012 , +0.2182789 ,0.6154688 ,0.8313543 ,0.7734013 ,0.4244191 ,0.7262126 ,0.7099977 ,0.4745746 , +0.9438692 ,0.1459649 ,0.0714101 ,0.6733739 ,0.6536925 ,0.1996896 ,0.6014125 ,0.1899375 , +0.2583981 ,0.0987874 ,0.0619903 }; + + double Result2[100]={0.3704526 ,1.4472121 ,1.280167 ,1.558316 ,0.9558184 ,1.1659586 ,0.8108833 ,0.2446086 ,0.5518112 , +1.2245913 ,0.5006866 ,1.4574133 ,1.0164204 ,1.012503 ,0.3786200 ,0.2170219 ,0.8988040 ,0.1886498 , +0.7162108 ,0.9938360 ,0.7545182 ,1.5455339 ,1.1565317 ,1.4723241 ,1.3068808 ,1.1986301 , +1.3952341 ,0.3939139 ,0.7066918 ,0.9715498 ,1.1813173 ,0.4999164 ,0.6063341 ,0.8247973 , +1.4885025 ,1.3126661 ,0.7310921 ,1.3418511 ,0.817985 ,0.3582631 ,1.0410647 ,1.3155524 ,0.8204611 , +1.2832118 ,1.4293768 ,0.8285963 ,1.1026109 ,0.7162046 ,1.4333425 ,0.8488801 ,1.1712446 , +0.7951439 ,0.4108027 ,1.3568786 ,1.2976283 ,1.2450785 ,1.5475762 ,0.7575165 ,1.4167823 , +1.3330362 ,1.4827086 ,0.7804523 ,0.8108635 ,0.8506004 ,1.3882729 ,1.1696254 ,1.4114321 , +0.8968537 ,0.8794129 ,1.1295698 ,1.463422 ,1.3302537 ,0.3292202 ,1.0954251 ,0.4591086 ,1.1109091 , +0.6284209 ,0.8186880 ,1.5367704 ,1.330434 ,0.3201089 ,1.3507459 ,0.9078157 ,0.5892561 ,0.6866071 , +1.1324761 ,0.7579997 ,0.7813013 ,1.0763156 ,0.3366420 ,1.4243081 ,1.4993254 ,0.8320334 , +0.8583428 ,1.3697552 ,0.9255284 ,1.3796979 ,1.3094327 ,1.4718476 ,1.5087663 }; + + for(i=0;i<100;i++){ + assert ( ( fabs(dacoss(Test1[i]) - Result1[i]) / fabs(dacoss(Test1[i])) ) < 1e-5); + assert ( ( fabs(dacoss(Test2[i]) - Result2[i]) / fabs(dacoss(Test2[i])) ) < 1e-5); + + } +} int testAcos(void) { printf("\n>>>> Float ArcCosine Tests\n"); sacossTest(); - cacossTest(); - sacosaTest(); - cacosaTest(); + dacossTest(); return 0; } @@ -85,3 +154,5 @@ int main(void) { assert(testAcos() == 0); return 0; } + + |