问:怎样在matlab function 模块中实现多输入
小弟在simulink 仿真的时候需要调用自己编写的m 函数。于是用matlab function 模块,但是我的M 函数有多个输入,貌似matlab function 模块只单输入。请教各位怎么在matlab function 模块实现以下算式,从而实现输出三相电压:左边算式,右边模块;
你好,我的matlab function 前后结构是这样的。那这个matlab function 模块里面的程序要怎么写呢,谢谢。
我写的是这样:
function y=fcn(u)
y=[y1 y2 y3]
u=[uaubuc]
y1=x(2)*cos(x(1));
y2=x(2)*cos(x(1)-2*pi/3));
y3=x(2)*cos(x(1)+2*pi/3));
y=u;
结果还是不正确啊。求解答,谢谢;
答:代码写的很乱:
1、开始的时候y1、y
2、y3
都还没赋值,直接就
y=[y1 y2 y3] 肯定会出错。
2、同样,ua 、ub 、uc 也没有赋值就用了。而且u 作为输入参数传进来,对u 赋值就把输入给覆盖了。
3、变量x(1)、x(2)哪里来的?
按照你现在的模块,可以把代码改成:
1
2
3
4
5 function y = fcn(x) y1=x(2)*cos(x(1)); y2=x(2)*cos(x(1)-2*pi/3); y3=x(2)*cos(x(1)+2*pi/3); y=[y1 y2 y3];
最后
以上就是暴躁墨镜最近收集整理的关于matlab function模块怎么用,怎样在matlab function模块中实现多输入的全部内容,更多相关matlab内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复