ゼータ関数の値 $\zeta(s)$ を出力するPythonコード

$s$ を実部が $1$ よりも大きい複素数とします。ゼータ関数の値 $\zeta(s)$ をPythonで計算してみよう。

ゼータ関数(小数近似)

小数近似を行う場合はmpmathモジュールを利用する。

zeta()関数の引数に $s \neq 1$ の複素数を入力することで, (解析接続された)ゼータ関数の値を出力する。

ゼータ関数(有理数表示)

分数表示を行う場合はsympyモジュールを利用する。

zeta()関数の引数に $s \neq 1$ の複素数を入力することで, (解析接続された)ゼータ関数の値を分数(有理数表示)で出力する。計算を正確にする場合, sympy.S()で型を変えておくと良い。

Pythonコード入力例①. $\zeta(-1)$ と $\displaystyle -\frac{1}{12}$ の値を mpmath.zeta()で出力する。

from mpmath import zeta

print(zeta(-1))
print(-1/12)

Pythonコード入力例②. $\zeta(-1)$ の値を sympy.zeta()で出力する。

from sympy import zeta, S

print(zeta(-1))    # -1/12(有理数で表示)
print(zeta(S(-1))) # -1/12(計算用)

コメントを残す