我正在尝试用一些参数求解一个二维延迟微分方程。问题是我无法获得正确的解决方案(我知道)并且我怀疑它来自集成步骤,但我不确定并且我不太了解 JiTCDDE 的工作原理。
这是 DDE:
这是我的模型:
def model(p, q, r, alpha, T, tau, tmax, ci):
f = [1/T * (p*y(0)+alpha*y(1, t-tau)), 1/T * (r*y(0)+q*y(1))]
DDE = jitcdde(f)
DDE.constant_past(ci)
DDE.step_on_discontinuities()
data = []
for time in np.arange(DDE.t, DDE.t+tmax, 0.09):
data.append( DDE.integrate(time)[1])
return data
我只对 y(1) 解决方案感兴趣
和参数:
T=32 #escala temporal
p=-2.4/T
q=-1.12/T
r=1.5/T
alpha=.6/T
tau=T*2.4 #delay
tmax=400
ci = np.array([4080, 0])
这是我对该模型和参数的绘图:
这是(蓝线)正确的解决方案(有人给我情节而不是数据)