genhypergeo(U, L, z, tol=0, maxiter=2000, check_mod=TRUE, polynomial=FALSE, debug=FALSE, series=TRUE)
genhypergeo_series(U, L, z, tol=0, maxiter=2000, check_mod=TRUE, polynomial=FALSE, debug=FALSE)
genhypergeo_contfrac(U, L, z, tol = 0, maxiter = 2000)
TRUE
meaning to check
that the modulus of z
is less than 1FALSE
meaning to
evaluate the series until converged, or return a warning; and
TRUE
meaning to return the sum of maxiter
terms,
whether or not converged. This is useful when either A
or B
is a nonpositive integer in which case the hypergeometric
function is a polynomialTRUE
meaning to return debugging
information and default FALSE
meaning to return just the
evaluategenhypergeo()
, Boolean argument with
default TRUE
meaning to return the result of
genhypergeo_series()
and FALSE
the result of
genhypergeo_contfrac()
genhypergeo()
is a wrapper for functions
genhypergeo_series()
and genhypergeo_contfrac()
.
Function genhypergeo_series()
is the workhorse for the whole
package; every call to hypergeo()
uses this function except for
the (apparently rare---but see the examples section) cases where
continued fractions are used. The generalized hypergeometric function [here genhypergeo()
]
appears from time to time in the literature (eg Mathematica) as
$$F(U,L;z) = \sum_{n=0}^\infty\frac{(u_1)_n(u_2)_n\ldots
(u_i)_n}{(l_1)_n(l_2)_n\ldots
(l_j)_n}\cdot\frac{z^n}{n!}$$ where
$U=(u_1,...,u_i)$ and
$L=(l_1,...,l_i)$ are the
upper and lower vectors respectively. The
radius of convergence of this formula is 1.
For the Confluent Hypergeometric function, use genhypergeo()
with
length-1 vectors for arguments U
and V
.
For the $0F1$ function (ie no upper arguments), use
genhypergeo(NULL,L,x)
.
See documentation for genhypergeo_contfrac()
for details of
the continued fraction representation.
hypergeo
,genhypergeo_contfrac
genhypergeo(U=c(1.1,0.2,0.3), L=c(10.1,pi*4), check_mod=FALSE, z=1.12+0.2i)
genhypergeo(U=c(1.1,0.2,0.3), L=c(10.1,pi*4),z=4.12+0.2i,series=FALSE)
Run the code above in your browser using DataLab