Matlab Function输入为一个向量时,应该怎么在函数中引用向量中的元素呢?思索良久未果,望高人指点。

下面框图,总是报错说维度不够。MatlabFunction代码:functionx=fcn(u)%r1曲柄长度;r2连杆长度;u(1)曲柄角速度;u(2)曲柄角度;u(3... 下面框图,总是报错说维度不够。Matlab Function代码:function x= fcn(u)%r1曲柄长度;r2连杆长度;u(1)曲柄角速度;u(2)曲柄角度;u(3)连杆角度r1=15;r2=55;a=[r2*sin(u(3)) 1;r2*cos(u(3)) 0];b=-u(1)*r1*[sin(u(2));cos(u(2))];x=inv(a)*b; 展开
 我来答
飞叶河
2019-06-18
知道答主
回答量:56
采纳率:0%
帮助的人:11.9万
展开全部

使用MATLAB Function 时需要注意,在多个输入和多个输出时,可以采用以下方法

  1. 函数名默认为fcn

  2. 输出为sys;

  3. 然后定义输出的维数(比如输出为两个,可定义 sys = [0;0];)

  4. 然后在最后输出时,可以将输出的实际变量赋给sys,  比如你这个可以定义为 sys = [x1;x2];

我刚才测试过,完美运行。

独吟独赏独步
2019-09-04 · TA获得超过1.3万个赞
知道大有可为答主
回答量:2807
采纳率:73%
帮助的人:1367万
展开全部
看不到你这个主程序,所以大概说一下,如果报错是维数不足的话,可以在主窗口把u1,u2,u3尝试输出来,观察一下是不是都有,估计是你数据引用那里没有弄好,
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bill8341
高粉答主

推荐于2020-04-03 · 关注我不会让你失望
知道大有可为答主
回答量:1.8万
采纳率:95%
帮助的人:3732万
展开全部
将多个数放在一个单元里面
那么单元里面只能是字符类型
就是要先把数据转化为字符串,然后写到一格里面
>> b=[3 5 7 11 20 22 24 32];
>> c=num2str(b);
>> xlswrite('G:\1.xlsx',{c},'Sheet1','B6');
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小芝芝吃冰淇淋C6
2020-04-03
知道答主
回答量:1
采纳率:0%
帮助的人:640
展开全部
楼主解决了嘛,我也是遇到类似的问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式