【发布时间】:2014-12-17 11:31:42
【问题描述】:
我必须在python中为函数e^((-x)^2)编写梯形和辛普森规则。
这是我到目前为止所得到的。它给出的答案是8218.7167913,但我老师的答案是1.77251356....。
我哪里做错了?
from numpy import *
def f(x):
return e**((-x)**2)
def trapezoid(f, a, b, n):
deltax = float(b - a)/(n)
h = float(b - a) / n
s = 0.0
s += f(a)/2.0
for i in range(1, n):
s += f(a + i*h)
s += f(b)/2.0
return s * h
print trapezoid(f, -3, 3, 6)
【问题讨论】:
-
您遇到了什么错误?如果您的代码没有任何问题,但您得到了错误的答案,请尝试打印一些中间值以查看错误在您的逻辑中的位置。
标签: python integration calculus