Added script front-end for primer-design code
[htsworkflow.git] / htswanalysis / MACS / lib / gsl / gsl-1.11 / doc / specfunc-hyperg.texi
1 @cindex hypergeometric functions
2 @cindex confluent hypergeometric functions
3
4 Hypergeometric functions are described in Abramowitz & Stegun, Chapters
5 13 and 15.  These functions are declared in the header file
6 @file{gsl_sf_hyperg.h}.
7
8 @deftypefun double gsl_sf_hyperg_0F1 (double @var{c}, double @var{x})
9 @deftypefunx int gsl_sf_hyperg_0F1_e (double @var{c}, double @var{x}, gsl_sf_result * @var{result})
10 These routines compute the hypergeometric function @c{${}_0F_1(c,x)$}
11 @math{0F1(c,x)}.  
12 @comment It is related to Bessel functions
13 @comment 0F1[c,x] =
14 @comment   Gamma[c]    x^(1/2(1-c)) I_(c-1)(2 Sqrt[x])
15 @comment   Gamma[c] (-x)^(1/2(1-c)) J_(c-1)(2 Sqrt[-x])
16 @comment exceptions: GSL_EOVRFLW, GSL_EUNDRFLW
17 @end deftypefun
18
19 @deftypefun double gsl_sf_hyperg_1F1_int (int @var{m}, int @var{n}, double @var{x})
20 @deftypefunx int gsl_sf_hyperg_1F1_int_e (int @var{m}, int @var{n}, double @var{x}, gsl_sf_result * @var{result})
21 These routines compute the confluent hypergeometric function
22 @c{${}_1F_1(m,n,x) = M(m,n,x)$}
23 @math{1F1(m,n,x) = M(m,n,x)} for integer parameters @var{m}, @var{n}.
24 @comment exceptions: 
25 @end deftypefun
26
27 @deftypefun double gsl_sf_hyperg_1F1 (double @var{a}, double @var{b}, double @var{x})
28 @deftypefunx int gsl_sf_hyperg_1F1_e (double @var{a}, double @var{b}, double @var{x}, gsl_sf_result * @var{result})
29 These routines compute the confluent hypergeometric function
30 @c{${}_1F_1(a,b,x) = M(a,b,x)$}
31 @math{1F1(a,b,x) = M(a,b,x)} for general parameters @var{a}, @var{b}.
32 @comment exceptions:
33 @end deftypefun
34
35 @deftypefun double gsl_sf_hyperg_U_int (int @var{m}, int @var{n}, double @var{x})
36 @deftypefunx int gsl_sf_hyperg_U_int_e (int @var{m}, int @var{n}, double @var{x}, gsl_sf_result * @var{result})
37 These routines compute the confluent hypergeometric function
38 @math{U(m,n,x)} for integer parameters @var{m}, @var{n}.
39 @comment exceptions:
40 @end deftypefun
41
42 @deftypefun int gsl_sf_hyperg_U_int_e10_e (int @var{m}, int @var{n}, double @var{x}, gsl_sf_result_e10 * @var{result})
43 This routine computes the confluent hypergeometric function
44 @math{U(m,n,x)} for integer parameters @var{m}, @var{n} using the
45 @code{gsl_sf_result_e10} type to return a result with extended range.
46 @end deftypefun
47
48 @deftypefun double gsl_sf_hyperg_U (double @var{a}, double @var{b}, double @var{x})
49 @deftypefunx int gsl_sf_hyperg_U_e (double @var{a}, double @var{b}, double @var{x}, gsl_sf_result * @var{result})
50 These routines compute the confluent hypergeometric function @math{U(a,b,x)}.
51 @comment exceptions:
52 @end deftypefun
53
54 @deftypefun int gsl_sf_hyperg_U_e10_e (double @var{a}, double @var{b}, double @var{x}, gsl_sf_result_e10 * @var{result})
55 This routine computes the confluent hypergeometric function
56 @math{U(a,b,x)} using the @code{gsl_sf_result_e10} type to return a
57 result with extended range. 
58 @comment exceptions:
59 @end deftypefun
60
61 @deftypefun double gsl_sf_hyperg_2F1 (double @var{a}, double @var{b}, double @var{c}, double @var{x})
62 @deftypefunx int gsl_sf_hyperg_2F1_e (double @var{a}, double @var{b}, double @var{c}, double @var{x}, gsl_sf_result * @var{result})
63 These routines compute the Gauss hypergeometric function 
64 @c{${}_2F_1(a,b,c,x) = F(a,b,c,x)$}
65 @math{2F1(a,b,c,x) = F(a,b,c,x)} for @math{|x| < 1}.  
66
67 If the arguments @math{(a,b,c,x)} are too close to a singularity then
68 the function can return the error code @code{GSL_EMAXITER} when the
69 series approximation converges too slowly.  This occurs in the region of
70 @math{x=1}, @math{c - a - b = m} for integer m.
71 @comment exceptions:
72 @end deftypefun
73
74 @deftypefun double gsl_sf_hyperg_2F1_conj (double @var{aR}, double @var{aI}, double @var{c}, double @var{x})
75 @deftypefunx int gsl_sf_hyperg_2F1_conj_e (double @var{aR}, double @var{aI}, double @var{c}, double @var{x}, gsl_sf_result * @var{result})
76 These routines compute the Gauss hypergeometric function
77 @c{${}_2F_1(a_R + i a_I, aR - i aI, c, x)$}
78 @math{2F1(a_R + i a_I, a_R - i a_I, c, x)} with complex parameters 
79 for @math{|x| < 1}.
80 exceptions:
81 @end deftypefun
82
83 @deftypefun double gsl_sf_hyperg_2F1_renorm (double @var{a}, double @var{b}, double @var{c}, double @var{x})
84 @deftypefunx int gsl_sf_hyperg_2F1_renorm_e (double @var{a}, double @var{b}, double @var{c}, double @var{x}, gsl_sf_result * @var{result})
85 These routines compute the renormalized Gauss hypergeometric function
86 @c{${}_2F_1(a,b,c,x) / \Gamma(c)$}
87 @math{2F1(a,b,c,x) / \Gamma(c)} for @math{|x| < 1}.
88 @comment exceptions:
89 @end deftypefun
90
91 @deftypefun double gsl_sf_hyperg_2F1_conj_renorm (double @var{aR}, double @var{aI}, double @var{c}, double @var{x})
92 @deftypefunx int gsl_sf_hyperg_2F1_conj_renorm_e (double @var{aR}, double @var{aI}, double @var{c}, double @var{x}, gsl_sf_result * @var{result})
93 These routines compute the renormalized Gauss hypergeometric function
94 @c{${}_2F_1(a_R + i a_I, a_R - i a_I, c, x) / \Gamma(c)$}
95 @math{2F1(a_R + i a_I, a_R - i a_I, c, x) / \Gamma(c)} for @math{|x| < 1}.
96 @comment exceptions:
97 @end deftypefun
98
99 @deftypefun double gsl_sf_hyperg_2F0 (double @var{a}, double @var{b}, double @var{x})
100 @deftypefunx int gsl_sf_hyperg_2F0_e (double @var{a}, double @var{b}, double @var{x}, gsl_sf_result * @var{result})
101 These routines compute the hypergeometric function @c{${}_2F_0(a,b,x)$}
102 @math{2F0(a,b,x)}.  The series representation
103 is a divergent hypergeometric series.  However, for @math{x < 0} we
104 have 
105 @c{${}_2F_0(a,b,x) = (-1/x)^a U(a,1+a-b,-1/x)$}
106 @math{2F0(a,b,x) = (-1/x)^a U(a,1+a-b,-1/x)}
107 @comment exceptions: GSL_EDOM
108 @end deftypefun