Я хочу решить эту оду с помощью odeint
, но начальное значение для оды должно быть переменной, предоставленной через fsolve
. Любая помощь приветствуется.
from scipy.integrate import odeint
from scipy.optimize import fsolve
import matplotlib.pyplot as plt
import numpy as np
def f(u):
return u+1
lam = 1
t = np.linspace(0,10,100)
def model(z,t):
dzdt = -lam*f(z)-z/(t+1)
return dzdt
def eqn(z0):
return odeint(model, z0, t)
x = fsolve(eqn, 1)
plt.plot(x,t)
plt.show()
Я получаю сообщение об ошибке:
error: Result from function call is not a proper array of floats.