scipy.special.hyp1f1#

scipy.special.hyp1f1(a, b, x, out=None) = <ufunc 'hyp1f1'>#

合流超几何函数 1F1。

合流超几何函数由以下级数定义

\[{}_1F_1(a; b; x) = \sum_{k = 0}^\infty \frac{(a)_k}{(b)_k k!} x^k.\]

更多细节请参考 [dlmf]。这里 \((\cdot)_k\) 是波赫哈默尔符号;请参考 poch

参数:
a, barray_like

实数参数

xarray_like

实数或复数参数

outndarray, 可选

函数结果的可选输出数组

返回:
标量或 ndarray

合流超几何函数的值

另请参阅

hyperu

另一个合流超几何函数

hyp0f1

合流超几何极限函数

hyp2f1

高斯超几何函数

注释

对于实数值,此函数使用来自 C++ Boost 库的 hyp1f1 例程 [2],对于复数值,则使用 specfun Fortran 库的 C 翻译版本 [3]

参考文献

[dlmf]

NIST 数学函数数字图书馆 https://dlmf.nist.gov/13.2#E2

[2]

Boost 开发人员。“Boost C++ 库”。 https://boost.ac.cn/

[3]

Zhang, Jin,“特殊函数的计算”,John Wiley and Sons, Inc, 1996。

示例

>>> import numpy as np
>>> import scipy.special as sc

x 为零时,其值为 1。

>>> sc.hyp1f1(0.5, 0.5, 0)
1.0

b 为非正整数时,它是奇异的。

>>> sc.hyp1f1(0.5, -1, 0)
inf

a 为非正整数时,它是一个多项式。

>>> a, b, x = -1, 0.5, np.array([1.0, 2.0, 3.0, 4.0])
>>> sc.hyp1f1(a, b, x)
array([-1., -3., -5., -7.])
>>> 1 + (a / b) * x
array([-1., -3., -5., -7.])

a = b 时,它简化为指数函数。

>>> sc.hyp1f1(2, 2, [1, 2, 3, 4])
array([ 2.71828183,  7.3890561 , 20.08553692, 54.59815003])
>>> np.exp([1, 2, 3, 4])
array([ 2.71828183,  7.3890561 , 20.08553692, 54.59815003])