24小时热门版块排行榜    

查看: 685  |  回复: 4

gyq274706322

银虫 (正式写手)

[求助] 大家看看我的程序怎么了?

我的M函数文件是
function xdot=dianci1(t,x)
   global w
m=19.6;g=9.8;la=0.116;lb=0.144;l=la+lb;
Jox=0.393;Joy=0.393;Joz=0.023;
ca=0.0004;cb=0.0004;
Ioxa=4;Ioya=4;Ioxb=4;Ioyb=4;
ra=0.0442;Da=0.08;Ara=pi*Da*ra;
rb=0.0442;Db=0.08;Arb=pi*Db*rb;
axy=0.16;
Nra=57;Nrb=57;miu0=4e-7*pi;
K=1;%K=7800;
KP=3.8;KI=200;KD=0.01;
m1=lb*m/l;m2=la*m/l;
e1=0;e2=0;

ixa=K*(KP*x(1)+KI*x(2)+KD*x(1));
iya=K*(KP*x(3)+KI*x(4)+KD*x(3));
ixb=K*(KP*x(5)+KI*x(6)+KD*x(5));
iyb=K*(KP*x(7)+KI*x(8)+KD*x(7));
%u(k)=kp*x(1)+kd*x(2)+ki*x(3);   %PID Controller;
%x(1)=error(k);                        %Calculating P
%x(2)=(error(k)-error_1)/ts;           %Calculating D
%x(3)=x(3)+error(k)*ts;                %Calculating I
%xi(k)=x(3);
fra=miu0*Nra^2*Ara*(Ioxa+ixa)^2/(4*(ca+x(1))^2);
fla=miu0*Nra^2*Ara*(Ioxa-ixa)^2/(4*(ca-x(1))^2);
fta=miu0*Nra^2*Ara*(Ioya+iya)^2/(4*(ca+x(3))^2);
fba=miu0*Nra^2*Ara*(Ioya-iya)^2/(4*(ca-x(3))^2);
frb=miu0*Nrb^2*Arb*(Ioxb+ixb)^2/(4*(cb+x(5))^2);
flb=miu0*Nrb^2*Arb*(Ioxb-ixb)^2/(4*(cb-x(5))^2);
ftb=miu0*Nrb^2*Arb*(Ioyb+iyb)^2/(4*(cb+x(7))^2);
fbb=miu0*Nrb^2*Arb*(Ioyb-iyb)^2/(4*(cb-x(7))^2);
   
Fxa=fra-fla+axy*(x(1)/ca)*(fta+fba);
Fya=fta-fba+axy*(x(3)/ca)*(fra+fla);
Fxb=frb-flb+axy*(x(5)/cb)*(ftb+fbb);
Fyb=ftb-fbb+axy*(x(7)/cb)*(frb+flb);
fx=m1*e1*w^2*cos(w*t)+m2*e2*w^2*cos(w*t);
fy=-m1*e1*w^2*sin(w*t)+m2*e2*w^2*sin(w*t);
A=-Fxa-Fxb+fx;
B=-Fya-Fyb+m*g+fy;
C=Fxa*la-Fxb*lb-Joz/l*w*x(2)+Joz*w/l*x(4);
D=Fya*la-Fyb*lb+Joz/l*w*x(6)+Joz*w/l*x(8);


xdot=[x(2);
     (Joy*A*l-C*l*la*m)/(Joy*la*m+Joy*lb*m);
      x(4);
       (Joy*A*l+ C*l*lb*m)/(Joy*la*m+Joy*lb*m);
      x(6);
      (Jox*B*l-D*l*la*m)/(Jox*la*m+Jox*lb*m);
      x(8);
      (Jox*B*l+D*l*lb*m)/(Jox*la*m+Jox*lb*m)];

在matlab中运行程序
clc;
clear;
%global w
w=100;
x0=[0,0,0,0,0,0,0,0];
for n=1:60
     [t,x]=ode45('dianci1',[0 10],x0);
x0=x(end,;
hold on
plot(x(:,1),x(:,2));
end
但是结果怎么会出错
错误是
??? Error using ==> odearguments at 116
DIANCI1 returns a vector of length 4, but the length of initial conditions vector is 8.
The vector returned by DIANCI1 and the initial conditions vector must have the same number
of elements.

Error in ==> ode45 at 173
[neq, tspan, ntspan, next, t0, tfinal, tdir, y0, f0, odeArgs, odeFcn, ...

Error in ==> jiedianci at 7
     [t,x]=ode45('dianci1',[0 10],x0);
我很纠结。我的方程是8个,为什么说是返回4个?
这个我该怎么调式,才能出结果?
希望大家给点建议。
谢谢了。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gyq274706322

银虫 (正式写手)

运行
clc;
clear;
%global w
w=100;
x0=[0,0,0,0,0,0,0,0];
for n=1:60
     [t,x]=ode45('dianci1',[0 10],x0);
x0=x(end,;
hold on
plot(x(:,1),x(:,2));
end
2楼2011-09-08 10:17:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gyq274706322

银虫 (正式写手)

怎么会出现那个小图啊?
3楼2011-09-08 10:17:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

信彼南山

木虫 (著名写手)


xiegangmai(金币+1): 谢谢提示! 2011-09-11 15:53:50
可以用
[ code] [/ code]  (去掉空格)
框住你的代码
4楼2011-09-11 11:51:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

信彼南山

木虫 (著名写手)

肯定是方程有错了。
5楼2011-09-11 17:39:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 gyq274706322 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 接收调剂 +4 津萌津萌 2026-03-02 7/350 2026-03-02 16:37 by 津萌津萌
[考研] 295求调剂。一志愿报考郑州大学化学工艺学硕,总分295分 +5 yl1 2026-03-02 5/250 2026-03-02 15:24 by sucesssucess
[考研] 江苏省农科院招调剂1名 +4 Qwertyuop 2026-03-01 4/200 2026-03-02 14:27 by 升格阿达
[考研] 265分求调剂不调专业和学校有行学上就 +6 礼堂丁真258 2026-02-28 9/450 2026-03-02 12:04 by 52hz~~
[基金申请] 此成果不能导入原因:元数据必填信息不完整,可 进行补充。 +4 Kittylucky 2026-03-02 5/250 2026-03-02 11:07 by jurkat.1640
[考研] 材料工程专硕283求调剂 5+4 ,!? 2026-03-02 6/300 2026-03-02 11:07 by 黑!在干嘛
[考研] 284求调剂 +10 天下熯 2026-02-28 11/550 2026-03-02 11:03 by 无际的草原
[考研] 264求调剂 +4 巴拉巴拉根556 2026-02-28 4/200 2026-03-02 10:48 by yuchj
[考研] 欢迎采矿、地质、岩土、计算机、人工智能等专业的同学报考 +5 pin8023 2026-02-28 7/350 2026-03-02 10:33 by ZY,先生
[考研] 0856材料调剂 +4 沿岸有贝壳OUC 2026-03-02 4/200 2026-03-02 10:19 by 公瑾逍遥
[基金申请] 成果系统访问量大,请一小时后再尝试。---NSFC啥时候好哦,已经两天这样了 +4 NSFC2026我来了 2026-02-28 4/200 2026-03-01 22:37 by 铁门栓
[考研] 299求调剂 +3 Y墨明棋妙Y 2026-02-28 5/250 2026-03-01 21:01 by tangxiaotian
[考研] 0856材料求调剂 +11 hyf hyf hyf 2026-02-28 12/600 2026-03-01 18:57 by 18137688336
[考博] 26申博 +4 想申博! 2026-02-26 6/300 2026-03-01 17:32 by 想申博!
[考研] 328求调剂 +3 aaadim 2026-03-01 5/250 2026-03-01 17:29 by njzyff
[考研] 321求调剂一志愿东北林业大学材料与化工英二数二 +4 虫虫虫虫虫7 2026-03-01 7/350 2026-03-01 16:52 by caszguilin
[考研] 313求调剂 +3 水流年lc 2026-02-28 3/150 2026-03-01 16:01 by 新能源达人
[考研] 307求调剂 +5 wyyyqx 2026-03-01 5/250 2026-03-01 15:21 by Fff-1
[考研] 085600材料工程一志愿中科大总分312求调剂 +8 吃宵夜1 2026-02-28 10/500 2026-02-28 20:27 by L135790
[高分子] 求环氧树脂研发1名 +3 孙xc 2026-02-25 11/550 2026-02-28 16:57 by ichall
信息提示
请填处理意见