aachangshuai 发表于 2010-9-10 16:25

请高手帮我看看我的分岔程序错在哪里啦,谢谢

function dx=chaosEE(t,x)
dy=zeros(5,1);
dx(1)=-x(1)+x(2)+x(1)*x(3)+x(2)*x(4)+E;
dx(2)=-x(1)-x(2)-x(2)*x(3)+x(1)*x(4);
dx(3)= -2*x(1)*x(1)+2*x(2)*x(2)-x(3)+2*x(4);
dx(4)=-4*x(1)*x(2)-2*x(3)-x(4);

clear
clc
close all
global E;
for E=0:0.1:15;
    =ode45('chaosEE',,);
    data=X(:,1).^2+X(:,2).^2;
    n=length(data);
    N=round(n/2);
    f=data(N-2);
    g=data(N-1);
    for i=N:n
      if g>=f & g>=data(i);
            plot(a,g);
            hold on;
            axis on;
            axis();
      else
      end
      f=g;
      g=data(i);
    end
end

kangarooli 发表于 2010-9-10 16:42

是dx=zeros(4,1);吧

hsfy919 发表于 2010-9-10 23:41

回复 aachangshuai 的帖子

楼上说的对,另外你在主函数中用到了全局变量E,但在函数文件中没有参数传递
建议你把程序改成这样试试
function dx=chaosEE(t,x)
global E;
dx=zeros(4,1);
dx(1)=-x(1)+x(2)+x(1)*x(3)+x(2)*x(4)+E;
dx(2)=-x(1)-x(2)-x(2)*x(3)+x(1)*x(4);
dx(3)= -2*x(1)*x(1)+2*x(2)*x(2)-x(3)+2*x(4);
dx(4)=-4*x(1)*x(2)-2*x(3)-x(4);

   
页: [1]
查看完整版本: 请高手帮我看看我的分岔程序错在哪里啦,谢谢