116
8 Hypergeometric Functions
8.2
Method of Computation
The evaluation of the hypergeometric function is based on the
• direct series expansion, if necessary combined with one of the linear transformations listed above,
• or the path integral method,
• or some recurrence formulas.
The single terms of the series (8.1)
(a) k (b) k
(c) k
z n
n!
can be evaluated via
t n =
(a + n − 1)(b + n − 1)
c + n − 1
z
n
t n−1 , t 0 = 1, n ∈ N,
(8.11)
and building a cumulative product. To minimize cancellation errors due to the finite
precision of the number computation, the summation terms are split in its real and
imaginary part and again in its positive and negative contribution. Before summing
up these part terms are reordered to minimize the loss of significance.
As the Gauss hypergeometric series (8.1) converges only for |z| < 1, and as it
converges more rapidly for smaller |z|, we optimize the series evaluation by using
the transformation formulae listed above. For |z| > 0.75 we select the allowed linear
transformations by minimizing the absolute value of the corresponding transformed
series. The new series is then evaluated as described above for the non-transformed
one.
For negative integer parameters a, b, c − a, or c − b the series is computed via
a finite polynomial independent of its argument. In addition the following representations of simple functions [3] are used to avoid unnecessary series evaluations:
2 F 1 (a, b; a; z) = (1 − z)
−b ,
(8.12a)
2 F 1 (a, b; b; z) = (1 − z)
−a ,
2 F 1 (a, b; c; z) = 0 for a · b = 0,
(8.12b)
2 F 1 (1, 1; 2; z) = −
1
z
log(1 − z),
(8.12c)
2 F 1 (a, a +
1
2
; 1 + 2a; z) = 2
2a
1 +
√
1 − z
−2a
,
(8.12d)
2 F 1 (b, b +
1
2
; 1 + 2b; z) = 2
2b
1 +
√
1 − z
−2b
,
Précédent

- 127/287

Suivant