diff options
Diffstat (limited to 'src/c/specialFunctions/erfinv/serfinvs.c')
-rw-r--r-- | src/c/specialFunctions/erfinv/serfinvs.c | 8 |
1 files changed, 7 insertions, 1 deletions
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; + } } |