Решатель од для системы од в "компактной" форме - PullRequest
0 голосов
/ 26 мая 2020

Пытаюсь решить набор од в компактной или матричной форме в python. Ода имеет следующую форму:

dydt = (np.dot((A-D),y) - np.dot(np.dot(np.diag(y),A),y))

В которой A и D - это матрицы N на N, а y - это N на 1, поэтому dydt также равно N на 1. Проблема в том, что функция ode возвращает список списков с размером (N, 1), но решатель odeint принимает только список с размером (N,). Итак, это дает мне эту ошибку:

RuntimeError: массив, возвращаемый fun c, должен быть одномерным, но получил ndim = 2.

Я ушел через множество примеров и вопросов, заданных другими пользователями, но я не смог найти свой ответ.

...