chenshumeionly 发表于 2011-7-9 22:51

分岔图另一种程序,系数变大后运行不出来了,到底怎么回事呢?

昨天找到这样一个分岔图程序,运行了半个来小时出来了分岔图
{:{28}:}
M 函数
function ydot=dbfun(t,y,flag,d)
w=1;c=0.3;
ydot=;
end
分岔图程序
d=20:0.01:40;
w=1.0;
T=2*pi/w;
hold on
for j=1:length(d)
    =ode23('dbfun',,,[],d(j));
    plot(d(j),y(500:100:1400,2),'linewidth',5)
    title('分岔图')
    xlabel('参数F0')
    ylabel('位移')
end


但是我套入我方程编制了下述程序
function xdot=fencha(tau,x,flag,q0)
w=1.0;
xdot=;
end


q0=20:0.01:60;
w=1.0;
T=2*pi/w;
hold on
for j=1:length(q0)
=ode23('fencha',,,[],q0(j));
    plot(q0(j),x(800:100:4000,1),'linewidth',5)
    xlabel('q0')
    ylabel('displacement')
end


运行了一下午也没出结果,哪位高手给指教一下,怎么方程里的系数变大了就运行不出来了呢!?还是别的原因。感觉作分岔图好麻烦啊,运行老半天。

kangarooli 发表于 2011-7-11 09:09

你这数据量也太大了,肯定得很长时间才能出来,再说取点也有问题啊!你试试
q0=20:0.1:60;
plot(q0(j),x(6500:100:7000,1),'linewidth',5);
先看看结果,合适的话在细化

chenshumeionly 发表于 2011-7-24 23:29

回复 2 # kangarooli 的帖子

你好,按照你的建议运行了一下,从下午五点运行到晚上十一点还是没出图。((em:04))

octopussheng 发表于 2011-7-25 18:03

计算的时候,matlab命令窗口有没有出现提示信息?

kezairenjian 发表于 2011-7-28 18:57

可以再程序运行过程中,输出一些东西,比如运行时间,或者某些点的数据。这样就可以判断程序是不是在运行过程中。

chenshumeionly 发表于 2011-8-1 23:39

回复 4 # octopussheng 的帖子

窗口显示一直处于busy状态,没有任何提示信息

chenshumeionly 发表于 2011-8-1 23:40

回复 5 # kezairenjian 的帖子

matlab显示处于busy状态,应该在运行

无水1324 发表于 2011-8-3 17:21

3.7467e+006*q0*

这个力是不是太大了?
改一下应该就好了

freedignity 发表于 2011-8-16 11:59

不知道你问题解决了没有。
程序的问题我不确定,但是依照二楼意见修改过后计算量肯定不会算一个下午。我只是说一下对你的方程的看法。因为激励力的幅度很大,其实这个系统的非线性现象已经不明显了。x^3这项的影响被减弱了。(具体原理可以参考《非线性动力学》(刘秉正)混沌一章的介绍。)也就是说,在这种情况下,在非线性基础上来分析已经不合适了。

liliangbiao 发表于 2011-8-17 02:33

你的方程在这么大的系数下无解!去掉3746700之后,方程有解。

chenshumeionly 发表于 2011-8-21 15:18

回复 9 # freedignity 的帖子

谢谢你,这么久以来我只是按照导师的指示研究根据方程画各种分岔混沌图,其实对于混沌分岔的原理以及怎么才会产生这样的现象理解的不够,尤其是通过方程看眉目。我会找找你说的这本书好好看看的。看来程序基本是没什么问题的,应该是方程的推导过程中哪块出错了,导致系数出了问题,谢谢!

chenshumeionly 发表于 2011-8-21 15:19

回复 10 # liliangbiao 的帖子

谢谢,但是我的方程里系数就是这样的,看来方程有问题。

chenshumeionly 发表于 2011-9-14 20:05

回复 8 # 无水1324 的帖子

数据确实是这样啊    是不是运行时间的问题   分岔图还出得来吗

chenshumeionly 发表于 2011-9-14 20:07

回复 9 # freedignity 的帖子

您好   我检查过了 方程没问题
最后一句话什么意思??

freedignity 发表于 2011-9-16 14:24

回复 14 # chenshumeionly 的帖子

你的方程有两个重要项:x^3和右边的外激励项,分别是非线性项和线性振子。两者对系统的影响大小跟各自的系数大小有关。你的方程两个系数的比例悬殊,非线性的影响就被线性振子掩盖,呈现不出非线性系统的特征。那么你用非线性理论和方法去分析和求解这个方程还有什么用呢。见过书上的推导,应该知道有些项是被省去的根本依据就是该项对系统的影响是次要的,其次才是为了简化计算的需要。这只是我结合那本书说的个人的观点。你最好也跟导师交流一下。
页: [1] 2
查看完整版本: 分岔图另一种程序,系数变大后运行不出来了,到底怎么回事呢?