M函数如下
% 编写异步发电机dqo坐标下的局部数学模型M—函数
% 将该M—函数定义为asy_ge,其中x为电流(id1,iq1,id2,iq2)的一阶导数,y=(id1,iq1,id2,iq2,ud1,uq1,w)
function x=asy_ge(y)
% 下面输入电机基本数据:
LR0=0.0013;LS0=0.0014;RR=0.146;RS=0.144;
% 下面计算互感LM与激磁电流之间的关系(考虑磁路饱和作用):
mm=((y(1)+y(3))^2+(y(2)+y(4))^2)^.5
LM=(0.2209268+0.1829319*mm-0.1096410*mm^2+0.0257472*mm^3-0.0028836*mm^4);
LR=LM+LR0;LS=LM+LS0;
%下面计算系数矩阵A和B
A=1/(LS*LR-LM^2)*[-RS*LR,
y(7)*LM^2, RR*LM,
y(7)*LM*LR;
-y(7)*LM^2, -RS*LR,
-y(7)*LM*LR,RR*LM;
RS*LM,
-y(7)*LM*LS, -RR*LS,
-y(7)*LS*LR;
y(7)*LM*LS, RS*LM,
y(7)*LS*LR, -RR*LS];
B=1/(LS*LR-LM^2)*[LR,0;0,LR;-LM,0;0,-LM];
%下面计算x与y之间关系
x=[(A*[y(1);y(2);y(3);y(4)]+B*[y(5);y(6)])];
运行后报错:
??? Input argument "y" is undefined.
Error in ==> asy_ge at 7
mm=((y(1)+y(3))^2+(y(2)+y(4))^2)^.5
不知什么原因
是在editor里按F5单独运行 asy_ge 函数时报错??? Input argument "y" is undefined.
Error in ==> asy_ge at 7
mm=((y(1)+y(3))^2+(y(2)+y(4))^2)^.5
不是仿真时报 不知什么原因
|