马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
请教下面求解微分方程的程序问题出在哪?
function dy = hlduffing(t,y)
global f
dy=zeros(3,1);
dy(1)=y(2);
dy(2)=f*cos(0.8*t)-0.2*y(2)-y(1)-y(1)^3;
end
function hlduffing1_bifur_f_getmax
% 最大值法求解分岔图
global f
clear all
t0=[0 100];%积分时间
%bifurcation
for f=linspace(10,32,1000); % f=10:32:1000; %r的变化精度
[t,y]=ode45('hlduffing',t0,[1;1]);
[Xmax]=getmax(y(:,1));
plot(f,Xmax,'k','markersize',1)
hold on
clear Xmax
end
下面是系统错误提示:
In an assignment A(I) = B, the number of elements in B and I must be the same.
Error in hlduffing (line 5)
dy(2)=f*cos(0.8*t)-0.2*y(2)-y(1)-y(1)^3;
Error in odearguments (line 88)
f0 = feval(ode,t0,y0,args{:}); % ODE15I sets args{1} to yp0.
Error in ode45 (line 114)
[neq, tspan, ntspan, next, t0, tfinal, tdir, y0, f0, odeArgs, odeFcn, ...
Error in hltest2013 (line 7)
[t,y]=ode45('hlduffing',t0,[1;1])
|