声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

楼主: 无水1324

[稳定性与分岔] 分岔的基本概念及matlab程序实现

  [复制链接]
发表于 2008-5-8 14:04 | 显示全部楼层
这个应该加精,对初学画分插图很有帮助的。
回复 支持 反对
分享到:

使用道具 举报

发表于 2008-5-21 21:58 | 显示全部楼层
哎 虽然说 不同软件程序思想大同小异,但是平时我用VF,突然看这个还是有点晕:@L

不过确实是好贴阿!
 楼主| 发表于 2008-5-22 14:57 | 显示全部楼层

回复 17楼 的帖子


可能吧,VF的速度应该比较快吧?matlab就是循环多了,运行的速度很慢的
发表于 2008-5-23 21:22 | 显示全部楼层


VF的速度也不是特别快吧!不知道matlab的慢到什么地步呢?
我如果算分岔图,算300个点的话要十分钟左右吧。每个点算三十万步。
发表于 2011-5-19 23:53 | 显示全部楼层
Thank you very much
发表于 2011-12-23 18:52 | 显示全部楼层
谢谢无水前辈的对后来者的启迪。
发表于 2011-12-28 10:15 | 显示全部楼层
先谢了!
发表于 2012-5-10 08:19 | 显示全部楼层
太棒了,得好好学习
发表于 2012-5-11 14:58 | 显示全部楼层
先谢谢了,下了学习
发表于 2012-11-14 17:22 | 显示全部楼层
如果能把运行结果的图也贴出来就更完美了!
发表于 2012-11-14 17:30 | 显示全部楼层
blues-et 发表于 2012-11-14 17:22
如果能把运行结果的图也贴出来就更完美了!

自己运行一下就可以了
发表于 2012-12-19 00:12 | 显示全部楼层
很不错,值得学习!
发表于 2013-1-11 10:27 | 显示全部楼层
很好,先谢了,学习中。
发表于 2013-8-12 10:32 | 显示全部楼层
n=3500;x=zeros(n+1,4);
x(1,1)=0;x(1,2)=5;x(1,3)=8;x(1,4)=10;q1=0.95;q2=0.95;q3=0.95;a=35;b=3;c=28;h=0.01;
m=1;r=1;w=1;xx(1,2)=5;xx(1,3)=8;xx(1,4)=10;kk1=1.8;kk2=0;kk3=0;tau1=0.45;tau2=0;tau3=0;
for i=2:n+1
    x(i,1)=x(i-1,1)+h;
    k1=0;
    for j=0:i-2
        k1=k1+1/gamma(q1)*h^q1/q1*[(i-j-1)^q1-(i-j-2)^q1]*(a*[x(j+1,3)-x(j+1,2)]+kk1*(x(j+1,2)-xx(j+1,2)));
    end
    k1=k1+x(1,2);
    k2=0;
    for j=0:i-2
        k2=k2+1/gamma(q2)*h^q2/q2*[(i-j-1)^q2-(i-j-2)^q2]*([(c-a)*x(j+1,2)-x(j+1,4)*x(j+1,2)+c*x(j+1,3)]+kk2*(x(j+1,3)-xx(j+1,3)));
    end
    k2=k2+x(1,3);
    k3=0;
    for j=0:i-2
        k3=k3+1/gamma(q3)*h^q3/q3*[(i-j-1)^q3-(i-j-2)^q3]*([x(j+1,2)*x(j+1,3)-b*x(j+1,4)]+kk3*(x(j+1,4)-xx(j+1,4)));
    end
    k3=k3+x(1,4);
    k4=0;
    for j=0:i-2
        if j==0
            z=(i-2)^(q1+1)-(i-2-q1)*(i-1)^q1;
        else
            z=(i-j)^(q1+1)+(i-j-2)^(q1+1)-2*(i-j-1)^(q1+1);
        end
        k4=k4+z*(a*[x(j+1,3)-x(j+1,2)]+kk1*(x(j+1,2)-xx(j+1,2)));
    end
    k5=0;
    for j=0:i-2
        if j==0
            z=(i-2)^(q2+1)-(i-2-q2)*(i-1)^q2;
        else
            z=(i-j)^(q2+1)+(i-j-2)^(q2+1)-2*(i-j-1)^(q2+1);
        end
        k5=k5+z*([(c-a)*x(j+1,2)-x(j+1,4)*x(j+1,2)+c*x(j+1,3)]+kk2*(x(j+1,3)-xx(j+1,3)));
    end
    k6=0;
    for j=0:i-2
        if j==0
            z=(i-2)^(q3+1)-(i-2-q3)*(i-1)^q3;
        else
            z=(i-j)^(q3+1)+(i-j-2)^(q3+1)-2*(i-j-1)^(q3+1);
        end
        k6=k6+z*([x(j+1,2)*x(j+1,3)-b*x(j+1,4)]+kk3*(x(j+1,4)-xx(j+1,4)));
    end
    x(i,2)=x(1,2)+h^q1/gamma(q1+2)*[a*(k2-k1)+k4];
    x(i,3)=x(1,3)+h^q2/gamma(q2+2)*[(c-a)*k1-k1*k3+c*k2+k5];
    x(i,4)=x(1,4)+h^q3/gamma(q3+2)*(k1*k2-b*k3+k6);
    if x(i,1)<=tau1
        xx(i,2)=x(i,2);
        m=m+1;
    else
        xx(i,2)=x(i-m,2);
    end
    if x(i,1)<=tau2
        xx(i,3)=x(i,3);
        r=r+1;
    else
        xx(i,3)=x(i-r,3);
    end
    if x(i,1)<=tau3
        xx(i,4)=x(i,4);
        w=w+1;
    else
        xx(i,4)=x(i-w,4);
    end
end
Y=x(500:3500,2:4);
l=lyapunovdelay(1e-2,Y)
发表于 2013-9-6 20:04 | 显示全部楼层
学习了,谢谢
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-17 11:45 , Processed in 0.069086 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表