Я пытаюсь повторить и построить нелинейную функцию логистической карты, заданную уравнением: x[n+1] = 4*x[n]*(1-x[n])
. Я нашел здесь реализацию функции https://www.mathworks.com/matlabcentral/answers/122101-plotting-fx-as-a-function-of-x-logistic-map
Я следил за тем же самым, только количество точек N
и начальное начальное условие в моей реализации другое. Я не знаю, почему я не получаю никаких значений в выводе; в основном имеют нулевое значение. Когда начальное состояние x[1] = 0.5
, я получаю странный сюжет, показанный на картинке. Но когда начальное условие, скажем, 0,3, я получаю правильную логистическую карту. Теоретически начальным условием может быть любое число от 0 до 1. Итак, почему код не работает, когда начальное условие равно 0,5?
В чем проблема?
N=20000; % number of data points
x = zeros(1,N);
x(1) = 0.5; % initial condition (can be anything from 0 to 1)
for n = 1:N
x(n+1) = 4*x(n)*(1-x(n));
end
plot(x(1:N),x(2:N+1),'rs-')
xlabel('x_n')
ylabel('x_{n+1}')
Вот сюжет