function Lorenz_bifur_r_getmax
% 最大值法求解分岔图
clear all
t0=[0 100];%积分时间
%bifurcation
for k=linspace(-4,4,1000);
[t,y]=ode45('Chen',t0,[1;1;1;1;36;-16;28;3;k]);
[Xmax]=getmax(y(:,1));
plot(k,Xmax,'b','markersize',1)
hold on
clear Xmax
end
红色字体是我做的修改,运行后提示:??? One or more output arguments not assigned during call to ‘getmax.m (getmax)’
getmax函数为:
function [Xmax] = getmax(y)
a=length(y);
j=1;
for i=(a-1)/2:a
b=(y(i,1)-y(i-2,1))/2;
c=(y(i,1)+y(i-2,1))/2-y(i-1,1);
if y(i-2,1)<=y(i-1,1)&y(i-1,1)>=y(i,1)&c==0
Xmax(j)=y(i-1,1);
j=j+1;
elseif y(i-2,1)<=y(i-1,1)&y(i-1,1)>=y(i,1)
Xmax(j)=y(i-1,1)-b^2/(4*c);
j=j+1;
end
end