Я использую scipy для решения системы обыкновенных дифференциальных уравнений. Для простоты, возьмите мой код, чтобы быть:Использование numpy массивов с scipy odeint
import scipy as sp
import numpy as np
from scipy.integrate import odeint
from numpy import array
def deriv(y,t): # return derivatives of the array y
a = -2.0
b = -0.1
return array([ y[1], a*y[0]+b*y[1] ])
time = np.linspace(0.0,10.0,100)
yinit = array([0.0005,0.2]) # initial values
y = odeint(deriv,yinit,time)
Но теперь я хочу, чтобы решить эту систему для нескольких значений константы «а». Так что вместо того, чтобы просто = -2,0, например, я хотел бы иметь:
a = array([[-2.0,-1.5,-1.,-0.5]])
и решить систему для каждого значения а. Есть ли способ сделать это без необходимости перебирать каждый элемент массива? Могу ли я сделать все сразу?