Я пытаюсь решить проблему начальных значений (ode), используя scipy.integrate.solve_ivp.Но «ошибка типа:« объект с плавающей точкой »не является подписным» произошла
, когда я использую odeint, он работает.я просто меняю солвер с той же настройкой.
def f(z, t):
c1 = z[0]
c2 = z[1]
dc1dt = -k1*c1 + k2*c2*(1-c1-c2)
dc2dt = k1*c1 - k2*c2*(1-c1-c2) - 2*k3*c2*c2
dcdt = [dc1dt, dc2dt]
return dcdt
def main():
k1 = 0.04
k2 = 10.0
k3 = 1500.0
z0 = [0.9, 0.1]
sol = solve_ivp(f,[0, 3000] , z0, method = 'RK45')
return sol
main()
TypeError: 'float' object is not subscriptable
Кто-нибудь может мне помочь?Кто-нибудь, помогите мне, плз!