我正在使用mpmath's nsum()
函数进行从 1 到 inf 的求和运算。像这样,但是 lambda 是一个线函数,我的方程很长,就像 ∑_(n=1)^∞▒e^(〖-n〗^2 )/(n^2+ 4〖(ab)〗</p >
对于简单的一行求和方程,它可以工作,但对于长求和如何使用它?有什么方法可以给nsum()
函数给出长求和方程吗?
import mpmath
mpmath.mp.dps = 50
nsum(lambda x: exp(-x**2), [-inf, inf])
__call__
可以使用实现该方法的所有内容:
要么lambda
:
nsum(lambda x: exp(-x**2), [-inf, inf])
或者一个def
函数:
def exp_sum(x):
return exp(-x**2)
nsum(exp_sum, [-inf, inf])
或者一个class
class exp_sum:
def __init__(self):
pass
def __call__(self,x):
return exp(-x**2)
nsum(exp_sum(), [-inf, inf])
您可以用普通函数替换 lambda:
def func(x):
return exp(-x ** 2)
nsum(func, [-inf, inf])