用ODE45求解FitzHugh-Nagumo方程

42次浏览(过去30天)
凯特Heinzman
凯特Heinzman 2020年2月22日
评论道: darova 2020年2月22日
编写一个程序来求解单个单元的FitzHugh-Nagumo方程(即,没有空间耦合)。
du / dt c1 u u ) (1 u) c2 紫外线 +机枪兵
dv / dt b (u v)
在哪里
一个= 0.13
b = 0.013
c 1 = 0.26
c 2 = 0.1
机枪兵 是一种刺激电流,可以在模拟开始时应用很短的时间。
u 表示膜电位,范围从0(休息)到1(激发)。 v 相同范围内的恢复变量。 t 是以毫秒为单位的时间。
如何使用MATLAB的ode45()函数对微分方程组进行积分?输入到程序的应该是模拟的持续时间;的初始值 u v , t ;刺激的强度,以及它被应用的时间(通常是几毫秒)。它的输出应该包括向量 t u 而且 v
2的评论
凯特Heinzman
凯特Heinzman 2020年2月22日
是的,但我仍然困惑于如何使用上面所述的指定输入和输出参数来编写整个函数。

登录评论。

接受的答案

darova
darova 2020年2月22日
这是我的成就。我不到处走动 机枪兵。 你能再解释一下吗?
% du/dt = c1u (u−a)(1−u)−c2uv +stim
% dv/ dt = b (u−v)
A = 0.13;
B = 0.013;
C1 = 0.26;
C2 = 0.1;
% let y(1) = u;Y (2) = v
F = @ (t, y) [c1 * y (1) * (y(1)——)* (1 y y (1) (1) c2 * * y(2) +机枪兵)
b * (y (1) - y (2)));
Tspan = [0 2];%的时间
Y0 = [1 2];% u0 = 1;V0 = 2;
[t,y] = ode45(F,tspan,y0);
情节(t, y)
传奇(“u (t)”“v (t)”
4评论
darova
darova 2020年2月22日
只是把它添加到输入参数?
函数dUdt = fhn(t,U,stim)
然后调用function
[t,U] = ode45(@(t,U)fhn(t,U,stim),[t0 tf],[u0;v0));

登录评论。

更多答案(0)

标签

社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!

开始狩猎!

翻译的