Как сгенерировать таблицу функции двух и более переменных?
Имеется функция двух переменных, требуется составить таблицу значений этой функции при различных значениях параметров. Сначала я создаю массивы параметров:
x1 = np.linspace(5, 95, 10)
x2 = np.linspace(3200, 2600, 50)
x1_grid, x2_grid = np.meshgrid(x1, x2)
Затем создаю массив, содержащий искомую таблицу:
y = np.zeros(x1_grid.shape)
Теперь заполняю его значениями:
for (index1, x1), (index2, x2) in zip(np.ndenumerate(x1_grid), np.ndenumerate(x2_grid)):
y[index1] = calc(x1, x2)
Последнее действие, вероятно, можно сделать проще. Как? Возможно, есть какие-то приёмы работы с meshgrid, которые я не знаю. В дальнейшем планируется масштабировать вычисления на функции большего количества параметров (до 5). Так же их соединять через zip
или есть вариант проще?
UPD Интересует не оптимизация по времени, а питоновские трюки, которые помогут записать последний цикл короче и понятнее, избегая неиспользуемые итераторы, что станет более актуально, когда размерность пространства повысится.