首页 > 解决方案 > 如何在 Python 中以数字方式计算 10 个积分

问题描述

我需要使用数值方法在 python 中确定性地计算以下总和。

我有以下功能: 在此处输入图像描述

有没有类似的东西scipy.integrate.tplquad可以计算出这么多积分?

标签: pythonprecisionnumericintegral

解决方案


使用同情

import sympy as sym

x = sym.symbols('x1:11')
expr = sym.prod(x) * sym.exp(-sum(x))
integral = sym.integrate(expr, *((xi, 0, 1) for xi in x))

print(integral)将向您显示显式表达式,但integral.factor()会向您显示更简洁的形式。

(-2 + E)**10*exp(-10)    # E is the mathematical constant

您还可以评估您想要的任何精度。

>>> integral.evalf()  # this can take an argument `n` for precision digits
1.65960210179703e-6

推荐阅读