怎么用matlab画分岔图

怎么用matlab画分岔图,第1张

把下毕轿姿面的程序保存成一个文件,运行即可。

程序的基本思路是:从初值出发,先计算y对时间t的导数,得到y的变化速度;求出x对t的导数,得到x随时间的变化速度。然后帆租时间前进一小步h=0.002,同时x和y也都发生一个小的变化,即在原来数值基础上加上时间步长h和变化速手绝度的乘积。如果x到达1或者-1,强制让y发生变化。这个过程不断迭代,得到结果。

clear

clc

gamma=2

r=0.9

N=400000

x=zeros(1,N)

y=zeros(1,N)

t=zeros(1,N)

h=0.002

for i=2:N

t(i)=t(i-1)+h

y(i)=y(i-1)+gamma*sin(t(i-1))*h

x(i)=x(i-1)+y(i-1)*h

if abs(x(i))>=1

y(i)=-r*y(i)

x(i)=x(i-1)+y(i-1)*h

end

end

figure

plot(x,y,'.','markersize',1)

axis([-1 1 -3 3])

xlabel('Displacement')

ylabel('Velocity')

Matlab关于滑肆毕Logistic映射混沌分岔图的问题

% 倍周期现象,混沌的遍历性。1975年,斯坦雹答福大学Feigenbaum教授信芹

figure

axis([2.7,4,0,1])

grid

hold on

for r = 2.7:0.005:3.9

x = 0.1

for i =2:200

x(i) = r *x(i-1) *(1-x(i-1))

end

pause(0.1)

for i=151:200

plot(r,x(i),'k.')

end

end

clearclfhold on

axis([0,3,-3,3])grid

for a=0:0.005:3 x=[0.1]for i=2:150

x(i)=a*sin(pi*x(i-1))end pause(0.1) for i=101:150

plot(a,x(i),'k.')end end


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12487757.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存