如何用JiTCDDE实现多维延迟微分方程?

时间:2018-05-12 10:50:30

标签: python differential-equations

我是一名学生用Python编码并试图解决下面的延迟微分方程:

<a href="http://www.codecogs.com/eqnedit.php?latex=\left\{\begin{array}{l}\dot{v}(t)=&space;y(t)&space;\\&space;\dot{y}(t)=&space;\frac{a_1\alpha}{\omega_1}.y(t-\tau)).\{1-tanh^2[v(t-\tau)]\}&space;-&space;v(t)-\frac{1}{Q_1}.y(t)&space;\end{array}\right.\\&space;\\&space;(a_1&space;=&space;70,&space;\quad&space;Q_1&space;=&space;50,&space;\quad&space;\omega_1&space;=&space;2260,&space;\quad&space;\alpha&space;=&space;10,&space;\quad&space;\tau&space;\in&space;[0,8e-3])" target="_blank"><img src="http://latex.codecogs.com/gif.latex?\left\{\begin{array}{l}\dot{v}(t)=&space;y(t)&space;\\&space;\dot{y}(t)=&space;\frac{a_1\alpha}{\omega_1}.y(t-\tau)).\{1-tanh^2[v(t-\tau)]\}&space;-&space;v(t)-\frac{1}{Q_1}.y(t)&space;\end{array}\right.\\&space;\\&space;(a_1&space;=&space;70,&space;\quad&space;Q_1&space;=&space;50,&space;\quad&space;\omega_1&space;=&space;2260,&space;\quad&space;\alpha&space;=&space;10,&space;\quad&space;\tau&space;\in&space;[0,8e-3])" title="\left\{\begin{array}{l}\dot{v}(t)= y(t) \\ \dot{y}(t)= \frac{a_1\alpha}{\omega_1}.y(t-\tau)).\{1-tanh^2[v(t-\tau)]\} - v(t)-\frac{1}{Q_1}.y(t) \end{array}\right.\\ \\ (a_1 = 70, \quad Q_1 = 50, \quad \omega_1 = 2260, \quad \alpha = 10, \quad \tau \in [0,8e-3])" /></a>

我想使用JiTCDDE,但是即使在研究了模块文档中的示例之后,也没有找到适应系统的方法。 我遇到的主要问题是我不明白如何同时处理包含 y v 的第二个等式。

目标是绘制系统的分叉图( v 作为τ的函数)。我使用错误的工具吗?或者有没有办法在我的情况下使用JiTCDDE?

1 个答案:

答案 0 :(得分:0)

您可以使用y的第一个参数来实现多维系统,以指示您要使用的组件。此外,您对微分方程右侧的定义必须有两个组成部分。

例如,您可以按如下方式实现您的示例:

from jitcdde import jitcdde, y, t
f = [
        y(1),
        a*α/ω*y(1,t-τ)*(1-symengine.tanh(y(0,t-τ))**2)-y(0)-y(1)/Q
    ]

DDE = jitcdde(f)

你方程式中的 v 现在是y(0); y 已成为y(1)

accompanying paperpreprint)中有一个二阶微分方程的例子,例如你的。