登录论坛

查看完整版本 : [求助]两个量进行循环,点取的很密的时候会报错,但把报错的点单独运行,却可以计算,困惑中


niozrc
2008-05-01, 19:30
这样的格式
for ii=a:a:400 %转矩循环

for jj=b:b:mmm %转速循环
………………………

本科毕设遇到的问题

请问可能是什么原因,为什么取特定的(ii,jj)可以计算,循环点取600个也能计算,当取道1000个点以上时就报错

希望高手解惑,thanks!

watcher
2008-05-01, 21:09
方便的话请给出出错部分的代码,您提供的两个for语句不能说明什么问题

niozrc
2008-05-01, 22:17
E=sym('E');U=sym('U');m=sym('m');p=sym('p');Xd=sym('Xd');Xq=sym('Xq');R1=sym('R1');T=sym('T');
W=sym('W');x=sym('x');
g=sym('T-(m*p*E*U*sin(x))/(p*W*Xd)-(m*p*U^2*(1/Xq-1/Xd)*sin(2*x))/(2*p*W)');
g1=subs(g,[E,U,m,p,Xd,Xq,R1,T,W],[Es,Us,3,6,1.384,1.167,0.041,ii+9,jj]);
fff=solve(g1,'x');
ff=subs(fff);

总是在解方程的时候出错,有的时候是倒数第二句,有的时候是倒数第三句

niozrc
2008-05-03, 22:12
请高手指点下
是不是计算量太大了 matlab受不了?