Implement some more transformation functions using code from Jason
[pspp-builds.git] / lib / gsl-extras / gsl-extras.h
1 #ifndef GSL_EXTRAS_H
2 #define GSL_EXTRAS_H
3
4 /* GSLEXTRAS_CDF_ERROR: call the error handler, and return a NAN. */
5 #define GSLEXTRAS_CDF_ERROR(reason, gsl_errno) \
6        do { \
7        gsl_error (reason, __FILE__, __LINE__, gsl_errno) ; \
8        return GSL_NAN ; \
9        } while (0)
10
11 double gslextras_cdf_beta_Pinv (const double p, const double a,
12                                 const double b);
13 double gslextras_cdf_beta_Qinv (double q, double a, double b);
14 double gslextras_cdf_binomial_P(const long k, const long n, const double p);
15 double gslextras_cdf_binomial_Q(const long k, const long n, const double q);
16 double gslextras_cdf_geometric_P (const long n, const double p);
17 double gslextras_cdf_geometric_Q ( const long n, const double p);
18 double gslextras_cdf_hypergeometric_P (const unsigned int k, 
19                                        const unsigned int n0,
20                                        const unsigned int n1,
21                                        const unsigned int t);
22 double gslextras_cdf_hypergeometric_Q (const unsigned int k, 
23                                        const unsigned int n0,
24                                        const unsigned int n1,
25                                        const unsigned int t);
26 double gslextras_cdf_negative_binomial_P(const long n,
27                                          const long k, const double p);
28 double gslextras_cdf_negative_binomial_Q(const long n, const long k,
29                                          const double p);
30 double gslextras_cdf_poisson_P (const long k, const double lambda);
31 double gslextras_cdf_poisson_Q (const long k, const double lambda);
32
33 #endif /* gsl-extras.h */