У меня есть двумерная функция $ f (x, y) = \ exp (yx) $. Я хотел бы вычислить двойной интеграл $ \ int_ {0} ^ {10} \ int_ {0} ^ {10} f (x, y) dx dy $, используя NumPy trapz. После некоторого чтения они говорят, что я должен просто повторить trapz дважды, но это не работает. Я пробовал следующее
import numpy as np
def distFunc(x,y):
f = np.exp(-x+y)
return f
# Values in x to evaluate the integral.
x = np.linspace(.1, 10, 100)
y = np.linspace(.1, 10, 100)
list1=distFunc(x,y)
int_exp2d = np.trapz(np.trapz(list1, y, axis=0), x, axis=0)
Код всегда выдает ошибку
IndexError: list assignment index out of range
Я не знаю, как это исправить, чтобы код мог работать. Я думал, что внутренняя ловушка должна была сначала объединиться вдоль y, затем мы заканчиваем вторым вдоль x. Спасибо.