scipy.special.poch#

scipy.special.poch(z, m, out=None) = <ufunc 'poch'>#

Pochhammer 符号。

Pochhammer 符号(上升阶乘)定义为

\[(z)_m = \frac{\Gamma(z + m)}{\Gamma(z)}\]

对于正整数 m,它表示

\[(z)_m = z (z + 1) ... (z + m - 1)\]

更多详细信息请参阅 [DLMF]

参数:
z, marray_like

实数值参数。

outndarray, optional

用于存储函数结果的可选输出数组

返回:
标量或 ndarray

函数的返回值。

附注

数组 API 标准支持

poch 对 NumPy 之外的 Python Array API 标准兼容后端具有实验性支持。请考虑通过设置环境变量 SCIPY_ARRAY_API=1 并提供 CuPy、PyTorch、JAX 或 Dask 数组作为数组参数来测试这些功能。支持以下后端和设备(或其他功能)的组合。

CPU

GPU

NumPy

不适用

CuPy

不适用

PyTorch

JAX

Dask

不适用

有关更多信息,请参阅 对数组 API 标准的支持

参考文献

[DLMF]

Nist, 数字数学函数库 https://dlmf.nist.gov/5.2#iii

示例

>>> import scipy.special as sc

当 m 为 0 时,它等于 1。

>>> sc.poch([1, 2, 3, 4], 0)
array([1., 1., 1., 1.])

当 z 等于 1 时,它简化为阶乘函数。

>>> sc.poch(1, 5)
120.0
>>> 1 * 2 * 3 * 4 * 5
120

它可以根据伽马函数表示。

>>> z, m = 3.7, 2.1
>>> sc.poch(z, m)
20.529581933776953
>>> sc.gamma(z + m) / sc.gamma(z)
20.52958193377696