В чем разница между составляющей.интегрировать.odeint и SciPy.интегрировать.ода?
Я прочитал документы для этих здесь, но он просто заявляет, что odeint
Это "интегратор с более простым интерфейсом на основе lsoda из ODEPACK"
какова фактическая разница? При каких обстоятельствах использование одного более уместно, чем другого?
2 ответов
если вы можете решить вашу проблему с odeint
, Я бы рекомендовал. Это просто функция, которая интегрирует ode с помощью lsoda.
если вы хотите гораздо больше вариантов, ode
- класс со многими методами и решатели:
Мне был интересен тот же вопрос, и позже я обнаружил, что в scipy есть другой API.интегрировать. Метод четко изложен в документации.
Это может заинтересовать людей, сравнивающих odeint (odeintw для комплекса) и ode (complex_ode для комплекса).
Это называется scipy.интегрировать.solve_ivp, доступный из scipy v1.0.0 : https://scipy.github.io/devdocs/generated/scipy.integrate.solve_ivp.html#scipy.integrate.solve_ivp В этом решателе LSODA не может обрабатывать комплекс, но BDF быстрее в моем случае.