2016-04-22 67 views
2

Python:辛普森的规则,曲线下面积为正面的负面答案?

y1=[ 9.49110000e-004 4.74145420e-004 1.41847155e-008 3.33228420e-028 
     3.76352289e-081 4.48206815e-193 0.00000000e+000 0.00000000e+000 
     0.00000000e+000 0.00000000e+000 0.00000000e+000] 

x=[ 112. 111.97667396 111.90666665 111.78989038 111.62619837 
    111.41538384 111.15717866 110.85125168 110.49720654 110.09457901 
    109.64283388] 

所有y值是正的,所以曲线下面积应该是积极的。但当我尝试使用辛普森的规则来整合

from scipy.integrate import simps 
    b= simps(y1, x) 

    print b 

我得到-2.45630795891e-05作为答案。我究竟做错了什么?

回答

3

x正在减少,所以你从右向左整合。这翻转了结果的标志。

+0

我颠倒了'y1'和'x',我仍然得到了同样的答案。 – HuShu

+0

@胡舒:那么,[当我将它们撤销](http://ideone.com/o3tepD)时,答案是正面的。 – user2357112

+0

哇!谢谢。我不知道如何/为什么会发生这种情况,但是在我重新启动内核并颠倒了顺序之后,它给了我一个正数。 – HuShu