Computation of incomplete confluent hypergeometric function of the first kind

97 Views Asked by At

In summary I need to compute "upper incomplete confluent hypergeometric function of the first kind":

$U(a, b, x, z) = \sum_{n=0}^{\infty} \frac{ x^n }{n!} \frac{\Gamma(a + n, z)}{\Gamma(b + n)}$

==== Details below ====

With regular gamma function defined as: $\Gamma(z) = \int_{0}^{\infty} x^{z - 1} e^{-x} dx $

The confluent hypergeometric function is defined as:

$F(a, b, x) = \frac{\Gamma(b)}{\Gamma(a)} \sum_{n=0}^{\infty} \frac{ x^n }{n!} \frac{\Gamma(a + n)}{\Gamma(b + n)}$

And I can find it implemented as double conf_hyperg( double a, double b, double x ) in boost or C++ standard library as documented here:

https://en.wikipedia.org/wiki/C%2B%2B_Technical_Report_1#Mathematical_special_functions

Problem is I need to compute the series using incomplete gamma, either upper or lower.

So with upper incomplete gamma function defined as: $\Gamma(z, w) = \int_{w}^{\infty} x^{z - 1} e^{-x} dx $

I need to compute "upper incomplete confluent hypergeometric function of the first kind":

$U(a, b, x, z) = \sum_{n=0}^{\infty} \frac{ x^n }{n!} \frac{\Gamma(a + n, z)}{\Gamma(b + n)}$

With lower incomplete gamma function defined as: $\gamma(z, w) = \int_{0}^{w} x^{z - 1} e^{-x} dx $

I need to compute "lower incomplete confluent hypergeometric function of the first kind":

$L(a, b, x, z) = \sum_{n=0}^{\infty} \frac{ x^n }{n!} \frac{\gamma(a + n, z)}{\Gamma(b + n)}$

Anyone knows if there is such a thing and where can I find an implementation for it? Or some paper detailing how to compute it efficiently? I'm not a specialist in numeric calculus and computing it naively by summation doesn't yield good results for extreme values of the parameters.