diff options
author | Sunil Shetye | 2019-05-17 17:30:07 +0530 |
---|---|---|
committer | Sunil Shetye | 2019-05-29 11:08:06 +0530 |
commit | 716c7a821a76e65bff30d0292095c585e37c3ac0 (patch) | |
tree | e56be10d77d70990c749b139d063b6bda69523ec /src/c/specialFunctions/erfinv | |
parent | 953447ba5cd043470d0f35c8a780e1b4c4d0aebf (diff) | |
download | scilab2c-master.tar.gz scilab2c-master.tar.bz2 scilab2c-master.zip |
Diffstat (limited to 'src/c/specialFunctions/erfinv')
-rw-r--r-- | src/c/specialFunctions/erfinv/derfinvs.c | 8 | ||||
-rw-r--r-- | src/c/specialFunctions/erfinv/serfinvs.c | 8 |
2 files changed, 14 insertions, 2 deletions
diff --git a/src/c/specialFunctions/erfinv/derfinvs.c b/src/c/specialFunctions/erfinv/derfinvs.c index 3f7fe761..2dce2051 100644 --- a/src/c/specialFunctions/erfinv/derfinvs.c +++ b/src/c/specialFunctions/erfinv/derfinvs.c @@ -28,7 +28,8 @@ double derfinvs (double inp1) { return 0.0/0.0; // returns Nan } - if ((inp1 >= -0.7) && (inp1 <= 0.7)) + + else if ((inp1 >= -0.7) && (inp1 <= 0.7)) { double sq = inp1 * inp1; return (inp1 * (((a[3]*sq+a[2]) * sq+a[1]) * sq+a[0]) / ((((b[3]*sq+b[2]) * sq+b[1]) * sq+b[0]) * sq+1)); //Inverse error formula @@ -45,5 +46,10 @@ double derfinvs (double inp1) double z = sqrt(-log((1+inp1)/2)); return (-(((c[3]*z+c[2]) * z+c[1]) * z+c[0]) / ((d[1]*z+d[0]) * z+1)); //Inverse error formula } + + else + { + return 0.0/0.0; // returns Nan + } } diff --git a/src/c/specialFunctions/erfinv/serfinvs.c b/src/c/specialFunctions/erfinv/serfinvs.c index 5436fe39..55ba532f 100644 --- a/src/c/specialFunctions/erfinv/serfinvs.c +++ b/src/c/specialFunctions/erfinv/serfinvs.c @@ -29,7 +29,8 @@ float serfinvs (float inp1) double na = 0.0/0.0; return (float)na; } - if ((inp1 >= -0.7) && (inp1 <= 0.7)) + + else if ((inp1 >= -0.7) && (inp1 <= 0.7)) { float sq = inp1 * inp1; return (inp1 * (((a[3]*sq+a[2]) * sq+a[1]) * sq+a[0]) / ((((b[3]*sq+b[2]) * sq+b[1]) * sq+b[0]) * sq+1)); //Inverse error formula @@ -46,5 +47,10 @@ float serfinvs (float inp1) float z = sqrt(-log((1+inp1)/2)); return (-(((c[3]*z+c[2]) * z+c[1]) * z+c[0]) / ((d[1]*z+d[0]) * z+1)); //Inverse error formula } + + else + { + return 0.0/0.0; + } } |