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 в качестве ответа. Что я делаю неправильно?


person HuShu    schedule 22.04.2016    source источник


Ответы (1)


x уменьшается, поэтому вы интегрируете справа налево. Это меняет знак результата.

person user2357112 supports Monica    schedule 22.04.2016
comment
Я поменял местами y1 и x, я все равно получил тот же ответ. - person HuShu; 23.04.2016
comment
@HuShu: Что ж, когда я переворачиваю их, я получаю положительный ответ. - person user2357112 supports Monica; 23.04.2016
comment
Вау! Спасибо. Я не знаю, как / почему это произошло, но после того, как я перезапустил ядро ​​и изменил порядок, он дал мне положительное число. - person HuShu; 23.04.2016