scipy.special.
zeta#
- scipy.special.zeta(x, q=None, out=None)[源代码]#
黎曼或赫尔维茨 zeta 函数。
- 参数:
- x浮点数或复数的类数组对象。
输入数据
- q浮点数的类数组对象,可选
输入数据,必须是实数。默认为黎曼 zeta 函数。当 q 为
None
时,支持复数输入 x 。如果 q 不为None
,则目前仅支持x >= 1
的实数输入 x ,即使q = 1.0
(对应于黎曼 zeta 函数)。- outndarray,可选
计算值的输出数组。
- 返回:
- out类数组对象
zeta(x) 的值。
另请参阅
注释
双参数版本是赫尔维茨 zeta 函数
\[\zeta(x, q) = \sum_{k=0}^{\infty} \frac{1}{(k + q)^x};\]有关详细信息,请参见 [dlmf]。黎曼 zeta 函数对应于
q = 1
的情况。对于
q = None
的复数输入,由于收敛速度慢导致运行时间过长,目前不支持abs(z.imag) > 1e9
和0 <= abs(z.real) < 2.5
的点。参考文献
[dlmf]NIST,数学函数数字图书馆,https://dlmf.nist.gov/25.11#i
示例
>>> import numpy as np >>> from scipy.special import zeta, polygamma, factorial
一些特定值
>>> zeta(2), np.pi**2/6 (1.6449340668482266, 1.6449340668482264)
>>> zeta(4), np.pi**4/90 (1.0823232337111381, 1.082323233711138)
第一个非平凡零点
>>> zeta(0.5 + 14.134725141734695j) 0 + 0j
与
polygamma
函数的关系>>> m = 3 >>> x = 1.25 >>> polygamma(m, x) array(2.782144009188397) >>> (-1)**(m+1) * factorial(m) * zeta(m+1, x) 2.7821440091883969