MATLAB代码
matlab
% 初始化
r_min = 2.5; % 参数r的起始值
r_max = 4.0; % 参数r的结束值
r_step = 0.001; % 参数r的步长
r_values = r_min:r_step:r_max; % 参数r的范围
% 分岔图数据初始化
num_iterations = 1000; % 总迭代次数
num_last_points = 100; % 用于绘图的最后的这些点
x = 0.5 * ones(size(r_values)); % 初始状态
bifurcation_data = zeros(num_last_points, length(r_values));
% 进行迭代和收集数据
for i = 1:num_iterations
x = r_values .* x .* (1 - x); % Logistic映射迭代
bifurcation_data(i, :) = x;
end
bifurcation_data=bifurcation_data(end-200:end,:);
% 绘制分岔图
figure;
plot(r_values, bifurcation_data, '.', 'MarkerSize', 1);
xlabel('Parameter r');
ylabel('Steady States');
title('Bifurcation Diagram of the Logistic Map');
%分析结果可从分岔图中得出