matlab绘制庞加莱截面_matlab庞加莱截面法画Lorenz系统分岔图(附图).doc

该博客介绍了如何利用庞加莱截面法在Matlab中绘制Lorenz系统的分岔图。通过提供的代码示例,读者可以修改参数以适用于其他系统,并得到相应的分岔图。示例代码包含了一个用于计算轨迹的函数以及Lorenz系统微分方程的定义。
摘要由CSDN通过智能技术生成

利用庞加莱截面法 画的Lorenz 系统的分岔图,复制改成其他系统即可运行,Matlab12a可以运行,附分岔图,见下页!

function Lorenz_bifur_r

Z=[];

for r=linspace(1,200,500);

% 舍弃前面迭带的结果,用后面的结果画图

[T,Y]=ode45(@Lorenz,[0,1],[1;1;1;16;r;4]);

[T,Y]=ode45(@Lorenz,[0,50],Y(length(Y),:));

Y(:,1)=Y(:,2)-Y(:,1);

% 对计算结果进行判断,如果点满足x=y,则取点

for k=2:length(Y)

f=k-1;

if Y(k,1)<0

if Y(f,1)>0

y=Y(k,2)-Y(k,1)*(Y(f,2)-Y(k,2))/(Y(f,1)-Y(k,1));

Z=[Z r+abs(y)*i];

end

else

if Y(f,1)<0

y=Y(k,2)-Y(k,1)*(Y(f,2)-Y(k,2))/(Y(f,1)-Y(k,1));

Z=[Z r+abs(y)*i];

end

end

end

end

plot(Z,'.','markersize',1)

title('Lorenz映射分岔图')

xlabel('r'),ylabel('|y|

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值