加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

matlab画的duffing方程 相图 和 庞加莱截面图(混沌)

(2010-09-09 15:29:12)
标签:

杂谈

昨天刚知道什么是相图和庞加莱截面,今天用matlab实现,给我的感觉虽然能画出图但理论基础还差得远。以前我是用vc++编程,现在发现用matlab编程真是太简单了,不过简单归简单就是效率有点低与vc++相比;

相图和庞加莱截面图实现:

第一步,建立一个M文件,用来存贮函数,本例题以达芬方程(Duffing)为例,其中force为参数

function df=dafen(t,x,flag,force)
df=[x(2);force*cos(1.2*t)-x(1)^3+x(1)-0.3*x(2)];

 

第二步,建立一个画图的M文件

clear
force=0.222;
options=odeset('RelTol',1e-7);%定义误差精度的,系统默认1e-3,如果改为1e-3,X将等于0 
tt=2*pi/1.2 %定义步长的 


[t,x]=ode45(@dafen,[0:tt/100:80*tt],[0,0],options,[],force);

 

figure
plot(x(2000:end,1),x(2000:end,2),'-')

%X=x-xxx %检验options的 
%pojialai
hold on
i=2000:100:3000
plot(x(i,1),x(i,2),'*')

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有