Can't plot henon map with certain initial conditions (code works for other conditions),
6 views (last 30 days)
Show older comments
I've created a function to plot Henon map, it works when a=1.4, b=0.3, x0=0, y0=0 and n=10,000. But it doesnt work when a=1.7, b=0.5, x0=0.1, y0=0.1 and n=10,000. I checked the workspace to see the results of x, y and I found that for the the second condition, both x and y becomes -Inf after about only 20 iterations. Can anybody help me with this issue? Lots of thanks!
Below is the code:
function [ x, y ] = Henon( a, b, x0, y0, n )
format long e;
x = zeros( n, 1 );
x(1) = x0;
y = zeros( n, 1 );
y(1) = y0;
for i = 1 : n-1
x(i+1) = 1 + y(i) - a*(x(i)^2);
y(i+1) = b*x(i);
end
figure(2)
plot( x, y );
xlabel( 'x' );
ylabel( 'y' );
title( ['Henon Map (iterations=' num2str(n) ')']);
end
0 Comments
Answers (1)
Subhadeep Koley
on 30 Oct 2019
I assume that you are referring to this [1] paper for creating Henon Map. The paper says, for a < 0.122500 or a > 1.55 for b = 0.3, the points always escape to infinity: apparently there exists no attractor in those cases [1]. Only for
0.122500 < a <1.55 depending on the initial values (x0, y0) either the points escape to infinity or they converge towards an attractor. Therefore, the authors adopted a = 1.4, b = 0.3 experimentally.
I think this is the reason why x and y shoots down to -Inf for a = 1.7, b = 0.5.
[1] Hénon, M. A two-dimensional mapping with a strange attractor. Comm. Math. Phys. 50 (1976), no. 1, 69--77.
0 Comments
See Also
Categories
Find more on Thermal Analysis in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!