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, optional
函数结果的可选输出数组
- 返回:
- 标量或 ndarray
合流超几何函数的值
注释
对于实数值,此函数使用C++ Boost库[2]中的
hyp1f1
例程,对于复数值,使用specfun Fortran库[3]的C翻译。参考文献
[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 为零时,它为一
>>> 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])