On May 13, 2014, at 9:25 AM, Dafna Hirschfeld <[email protected]> wrote:

> #include <gsl/gsl_math.h>
> #include <stdio.h>
> 
> int main(){
>    double x= 0.5;
>    double res = gsl_cdf_ugaussian_Pinv(x);
>    printf("icdf(%f)=%f\n",x,res);
>    return 0;
> }
> 
> For some reason the output is: *icdf(0.500000)=1.000000*
> 
> Which is wrong, it should be: *icdf(0.500000)=0.000000 (because P(X<0)=0.5)*
> 
> Did I do something wrong?
> 

You have to include <gsl/gsl_cdf.h>.  From the info page:

"The functions for random variates and probability density functions
described in this section are declared in 'gsl_randist.h'.  The
corresponding cumulative distribution functions are declared in
'gsl_cdf.h’.”


Reply via email to