马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
M文件如下
function dx=f2(t,x);
m1=1.8491 m2=1.3950 me=0.7951
a1=0.03 wg=0.46 we=0.02 Fm=0.04 Fin=0.2
if x(1)>1
f_x(1)=x(1)-1;
else if x(1)<-1
f_x(1)=x(1)+1;
else f_x(1)=0;
end
dx(1)=x(2);
dx(2)=-2*m1/m2*a1*x(2)-me/m2*f_x(1)+Fm*(1-0.1*sin(we*t))+Fin*wg^2*sin(wg*t);
%dx(2)=-2*me/m2*a1*x(2)-me/m2*(1+a2*sin(wg*t))*f_x(1)+Ft
%Ft=Fm*(1-0.1*sin(we*t))+Fin*wg^2*sin(wg*t)
dx=[dx(1);dx(2)];
运行如下
clear all;
clc;
H=[0 100];x0=[0,0];
[t,x]=ode45('f2',H,x0);
plot(x(:,1),x(:,2),'m-');
错误如下
??? Error: File: f2.m Line: 2 Column: 11
Unexpected MATLAB expression.
Error in ==> funfun\private\odearguments at 80
if (nargin(ode) == 2)
Error in ==> ode45 at 173
[neq, tspan, ntspan, next, t0, tfinal, tdir, y0, f0, odeArgs, odeFcn, ...
Error in ==> Untitled6 at 4
[t,x]=ode45('f2',H,x0);
着急 自己弄两天了 还是弄不出来 请高手帮忙 |