我正在积分以下微分方程
使用 JiTCDDE 使用此代码:
def model(p, q, r, alpha, T, tau, tmax, ci, step):
f = [(p*y(0)+alpha*y(1, t-tau)), (r*y(0)+q*y(1))]
DDE = jitcdde(f)
DDE.constant_past(ci)
DDE.adjust_diff()
data = []
for time in np.arange(DDE.t, DDE.t+tmax, step):
data.append( DDE.integrate(time)[1])
return data
并使用此参数
T=3 #escala temporal
p=-2.4/T
q=-1.12/T
r=1.5/T
alpha=.4/T
tau=T*2.4 #delay
tmax=30
step = 1
ci = np.array([1300, 0])
我的麻烦是,当我绘制通过
data = model(p, q, r, alpha, T, tau, tmax, ci, step)
我最多得到一个非常不平滑的配置文件,如下所示:
当我将集成步骤更改为 0.1 时,我得到了这个
但那个情节去 300 而不是 30 这是我想要的
问题是:有什么方法可以将方程积分到 t=30 ,但像 t=300 一样平滑?我可以通过仅更改参数来做到这一点吗?