如何解决在python中使用scipy.integrate.solve_ivp时,是否有一种方法来绑定变量的值?
我想用两个变量x和u来解决python中的IVP,但是我需要u的值在0到1之间。现在,它为我提供了一个负值的解决方案。这是我的代码。
def model_case_3(t,z,Kmax,k,b,list_Kmax,sigma):
a=1.5
x,u= z
m=1
r = list_Kmax[0][0]
dxdt = (x)*(r*(1-a*u**2)*(1-x/(Kmax*(1-0.999*u**2)))-m/(k+b*u)-0.05)
dudt = sigma*((-2*a*(b**2)*r*(u**3)+4*a*b*k*r*(u**2)+2*a*(k**2)*r*u-b*m)/((b*u+k)**2))
return [dxdt,dudt]
sol = solve_ivp(fun=model_case_3,t_span=[scaled_days[i][j][0],scaled_days[i][j][-1]],y0=[scaled_pop[i][j][0],list_u[0][0][0]],t_eval=scaled_days[i][j],args=(list_Kmax[0][0],k0,b0,list_b,sigma0))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。