声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

楼主: octopussheng

[稳定性与分岔] 非自治系统分岔图绘制实例——有疑问的都到这里面来

  [复制链接]
发表于 2010-10-6 18:41 | 显示全部楼层
octpussheng既然把这个帖子贴出来是为了解决分叉问题的,就应该负责给群众们把问题解答清楚呀,按照你的程序,做出的结果确实跟你给的图不符呀,能解答清楚吗?
回复 支持 反对
分享到:

使用道具 举报

 楼主| 发表于 2010-11-17 16:29 | 显示全部楼层
回复 27 # kangarooli 的帖子

对于三维系统,如Lorenz,取这样的平面就很好理解了。
发表于 2010-11-20 01:59 | 显示全部楼层
感觉收获很大!谢谢LZ!
 楼主| 发表于 2010-11-20 08:22 | 显示全部楼层
回复 31 # baiyang 的帖子

给出的结果就是根据这个程序算出来的,对于你的问题,我无话可说。
发表于 2010-11-22 16:38 | 显示全部楼层

老师,我今天研究了你这个程序半天,终于看懂了,不过按照你你的程序出的图好像是和你的附件里的图不一样,和上面有个网友的图是一样的,我仔细看了下你的微分方程程序
duffing系统:
function dx=duffing(t,X)
global F wd;
r=0.25;
x=X(1);
y=X(2);
psi=X(3);
dx=zeros(3,1);
dx(1)=y;
dx(2)=-r*y-x^3+F*cos(psi);
dx(3)=wd;
个人感觉你的dx(2)=-r*y-x^3+F*cos(psi)这个表达式好像我在书上看的duffing振子的方程不太一样,陈立群老师编著的《非线性振动》一书里的duffing振子的方程的方程是dx(2)=-r*y+x-x^3+F*cos(psi),好像和老师你的方程相比,多了一项x,我在你的方程上加了一项,现在变成dx(2)=-r*y+x-x^3+F*cos(psi)以后,按照你的程序运行了下,分岔图变成这样

untitled.jpg
走这个图看,好像出现了混沌现象,但是没出现倍周期分岔等,和老师的图还是不一样的,但是有点类似的趋势了,现在的问题就是不知道老师你的微分方程可是确切,和上述很多网友的困惑一样,按照老师的程序来运行,就是和老师你的图不太一样,老师有时间的话能否再细看下方程?看看方程是不是书写错了?



 楼主| 发表于 2010-11-22 16:49 | 显示全部楼层
再次检查了一下,应该是这部分的问题,试试:
dx(2)=-r*y+1/2*x*(1-x^2)+F*sin(psi);

看结果怎样。
发表于 2010-11-22 20:33 | 显示全部楼层
本帖最后由 tudexin 于 2010-11-22 20:35 编辑
octopussheng 发表于 2010-11-22 16:49
再次检查了一下,应该是这部分的问题,试试:
dx(2)=-r*y+1/2*x*(1-x^2)+F*sin(psi);


老师,按照你的新的方程,把图做了下,结果出来了,效果还是不错的
untitled.jpg
按照你的方法画分岔图,比频闪法效率快了很多啊!
 楼主| 发表于 2010-11-22 21:26 | 显示全部楼层
这就是频闪法啊!
发表于 2010-11-22 22:53 | 显示全部楼层
octopussheng 发表于 2010-11-22 21:26
这就是频闪法啊!

老师,我是这样编写程序的,方程和你是一样的,贴上我的分岔图程序
function duffing_bifur_F1
clear;
global F wd;
wd=1.0;
options=odeset('RelTol',1e-6);
period=2*pi/wd;
for F=0.1:0.001:0.35;
y0=[0,0.001,0];
[t,y]=ode45('duffing',[0:period/100:1000*period],y0,options,F) ;
hold on
plot(F,y(90000:100:end,1),'r.')
end
我的分岔图
untitled1.jpg
和老师你的程序运行结果图有点类似,但是不同的是,我这个运算了很久,大概1个多小时左右。参考论坛的几个做分岔图的程序,我这个方法是频闪法吗?
 楼主| 发表于 2010-11-23 14:13 | 显示全部楼层
也是频闪法 的思路啊,都是隔一个周期取点。
发表于 2010-11-23 15:27 | 显示全部楼层
octopussheng 发表于 2010-11-23 14:13
也是频闪法 的思路啊,都是隔一个周期取点。

老师,有时间的话能否把这个分岔图的按截面法的做法的程序写一个,感觉截面法还是一头雾水?这个截面相对于时间来取还是其中的一个变量来取?
 楼主| 发表于 2010-11-23 19:47 | 显示全部楼层
截面法可以参考论坛里面Lorenz系统的例子

不过对于你做的东西,因为是非自治的,所以就用这个帖子里面提到的方法即可解决。
发表于 2010-11-24 10:32 | 显示全部楼层
octopussheng 发表于 2010-11-23 19:47
截面法可以参考论坛里面Lorenz系统的例子

不过对于你做的东西,因为是非自治的,所以就用这个帖子里面提 ...

好的,老师
我再来研究下
发表于 2010-11-30 09:45 | 显示全部楼层
好贴!受益匪浅!请问有没有做其他方程的呢?比如磁学方面的!
发表于 2010-11-30 11:57 | 显示全部楼层
本帖最后由 chao 于 2010-11-30 12:02 编辑

大家好!我也是刚接触到非线性振动的领域,因此有些地方不明白。请问:在例子中period为什么取2*pi/wd?非线性振动响应的周期并不一定是2*pi/wd。其实就是想知道如何确定取点,从而画分岔图的。谢谢!
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-12-26 02:32 , Processed in 0.096154 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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