8.3 The SPECFUNPHYS-Class Gausshyp
119
+(c − a − b − 2n){c(a + b − c + 2n) + c − 2(a + n)(b + n)
+z[(a + b + 2n)(c − a − b − 2n) + 2(a + n)(b + n) − c + 1]} 2 F 1 (a + n, b + n; c; z)
+(a + n)(b + n)(c − a − b − 2n + 1)(1 − z) 2
2 F 1 (a + n + 1, b + n + 1; c; z)
0 = (c + n)(c + n − 1)(z − 1) 2 F 1 (a, b; c + n − 1; z)
(8.19)
+(c + n){(c + n − 1 − [2(c + n) − a − b − 1]z} 2 F 1 (a, b; c + n; z)
+(c − a + n) ∗ (c − b + n)z 2 F 1 (a, b; c + n + 1; z).
The recurrence relations are used upwards and downwards up to a maximum depth
of 12 steps to avoid inaccuracy.
8.3
The SPECFUNPHYS-Class Gausshyp
The SPECFUNPHYS-class gausshyp support the evaluation of the hypergeometric
function 2 F 1 (a, b; c; z) for complex parameters and argument. The syntax is
[obj,result] = gausshyp(a,b,c,z). The function parameters “a”, “b”,
and “c” are complex scalar parameters, the variable “z” could be an arbitrary
complex array. The return values are the class object “obj” with properties “value”,
the function values, “z”, input at which the function will be evaluated, “a” and
“b”, numerator parameters of the function, “c”, denominator parameter of the
function, and “info” some general information with respect to the evaluation (which
transformation was used and which computational techniques). The additional
return value “result” equals obj.value or gausshyp(a,b,c,z).value.
Examples
The following examples show how to evaluate the Gauss hypergeometric function:
a = pi + i; b = 0.5;
% numerator
c = 1.2;
% denominator
z = 2 * exp(i * pi * rand);
% function value
obj = gausshyp(a,b,c,z)
obj =
gausshyp with properties:
value: 0.3191 + 0.0325i
z: -1.6707 + 1.0995i
a: 3.1416 + 1.0000i
b: 0.5000
c: 1.2000
info: ’trafo3: computation based on series expansion’
Précédent

- 130/287

Suivant