这个图是有的。我给你找找看。下面是程序:
clcclearb=0.0
N=400
an=ones(1,N)
xn=zeros(1,N)
hold onbox on
x=0
y=0
col=['r','g','m','b','y'氏镇]
ct=0
for 逗消a=-0.25:0.001:2.0
for k=1:N
xm=x
ym=y
x=ym+1-a*xm.*xm
y=b*xm
end
xn(1)=x
for n=2:N
xm=x
ym=y
x=ym+1-a*xm.*xm
歼指粗 y=b*xm
xn(n)=x
end
mmt=mod(ct,5)+1
plot(an*a,xn,'.','markersize',1,'color',col(mmt))
ct=ct+1
end
xlabel('a')
ylabel('x')
grid on
xlim([-0.25,a])
ylim([-1,2.2])
【a和b的羡首关系图】有点让人感到费解,常规的Henon映射一般是对于具体的常数a、b来画x、y的图。题主最好再提供一些背景信息(比如这个图出派渗自哪个文献),才能为你兄羡数提供进一步的帮助。
承蒙楼上的知友抬爱,把我察搏两年半之前回答一个问题(编号687646670441069324)的答案一字不改的复制过来了。其前袭实那段代码是我在上某门课时为了观察Hénon引力线的迭代过程而编写的,与当时问题的要求也并不太相符。
这个问题的背景是关于混沌现象的一个称为Hénon映射的离散时间动态系统模型
其中经败悔祥典Hénon映射取a = 1.4,b = 0.3,也就是题目中给的数据。
(1)按照要求,编写函数:
function [x, y] = henon(x0, y0, N)x = [0 zeros(N,1)*NaN]
y = x
for i = 1 : N
x(i+1) = 1 + y(i) - 1.4*x(i)^2
y(i+1) = 0.3 * x(i)
end
输入参数分别为初值x0、y0以及迭代次数,输出为迭代结果。
(2)调用函数
x0 = 0.1 y0 = 0.2[x, y] = henon(x0, y0, 100)
disp([x(end) y(end)])
结果为 xk = -1.2493, yk = 0.3805。
(3)调用函数
x0 = 0 y0 = 0[x, y] = henon(x0, y0, 30000)
plot(x, y, '.')
xlabel x, ylabel y
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)