scipy.special.

zeta#

scipy.special.zeta(x, q=None, out=None)[source]#

黎曼或赫维兹 zeta 函数。

参数:
xfloat 或 complex 的类数组。

输入数据

qfloat 的类数组,可选

输入数据,必须是实数。默认为黎曼 zeta。 当 qNone 时,支持复数输入 x。如果 q 不是 None,那么目前仅支持 x >= 1 的实数输入 x,即使 q = 1.0 (对应于黎曼zeta函数)。

outndarray,可选

用于计算值的输出数组。

返回:
outarray_like

zeta(x) 的值。

另请参见

zetac

注释

双参数版本是赫维兹 zeta 函数

\[\zeta(x, q) = \sum_{k=0}^{\infty} \frac{1}{(k + q)^x};\]

有关详细信息,请参见 [dlmf]。黎曼zeta函数对应于 q = 1 的情况。

对于 q = None 的复数输入,由于收敛速度慢导致运行时间过长,目前不支持 abs(z.imag) > 1e90 <= abs(z.real) < 2.5 的点。

参考文献

[dlmf]

NIST, Digital Library of Mathematical Functions, 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