Нахождение неподвижных точек / аттракторов / репеллеров карты палатки

Мне нужно найти неподвижные точки и аттракторы функции карты палатки дано определением ниже:

    xt =  (3/2) * xt-1      when 0 <= x <= (2/3)

    and

    xt = 3* (1-xt-1)        when (2/3) <= x <= 1

Я использую приведенный ниже код MATLAB для создания диаграммы паутины (показанной ниже кода), чтобы увидеть, могу ли я получить некоторое представление об этой конкретной функции карты палатки. Как видите, я начинаю с установки t = 1 (и x (1) = 0.2001), но есть бесконечно много возможных мест, с которых можно начать. Как вы можете определить фиксированные точки / аттракторы, если вы не проверяете каждую начальную точку?

clear
close all

% Initial condition 0.2001, must be symbolic.
nmax=200;
t=sym(zeros(1,nmax));t1=sym(zeros(1,nmax));t2=sym(zeros(1,nmax));
t(1)=sym(2001/10000);
mu=2;
halfm=(2/3) *nmax;
axis([0 1 0 1]);
for n=2:nmax
    if (double(t(n-1)))>0 && (double(t(n-1)))<=2/3         % 0 <= x <= (2/3)
            t(n)=sym((3/2)*t(n-1));                        % x(t) = (3/2) * x(t-1)
        else
            if (double(t(n-1)))<1                          % else (2/3) <= x <= 1
                t(n)=sym(3*(1-t(n-1)));                    % x(t) = 3* (1-x(t-1))
            end
    end
end



for n=1:halfm
    t1(2*n-1)=t(n);
    t1(2*n)=t(n);
end


t2(1)=0;t2(2)=double(t(2));
for n=2:halfm
    t2(2*n-1)=double(t(n));
    t2(2*n)=double(t(n+1));
end

hold on
fsize=20;
plot(double(t1),double(t2),'r');


x=[0 (2/3) 1];y=[0 mu/2 0];
plot(x,y,'b');

Следующая паутинная диаграмма предназначена для t (1) = 0.2001 enter image description here

6
задан duplode 6 July 2019 в 23:09
поделиться