主题:如何用MATLAB计算这2个矩阵的乘积?
飞行动力
[专家分:0] 发布于 2007-10-12 13:23:00
A =[cos(θ1),-sin(θ1),sin(θ1),0;sin(θ1),cos(θ1),0,0;0,0,1,d1;0,0,0,1]
B =[cos(θ2),0,-sin(θ2),l1cos(θ2);sin(θ2),0,cos(θ2),l1sin(θ2);0,-1,0,d2;0,0,0,1]怎么做呢?先谢谢大家帮忙了!
最后更新于:2007-10-12 13:34:00
回复列表 (共8个回复)
沙发
junlee [专家分:110] 发布于 2007-10-12 15:22:00
先要知道你给的两个矩阵中的未知数,然后直接用A*B就是两个矩阵的乘积
板凳
飞行动力 [专家分:0] 发布于 2007-10-12 15:30:00
未知数不知道,要求结果带者所有字母
3 楼
junlee [专家分:110] 发布于 2007-10-12 15:48:00
% θ1=sita1,θ2=sita2 关键在于用syms定义你的符号变量
程序如下:
syms sita1 sita2 d1 d2 l1
A =[cos(sita1),-sin(sita1),sin(sita1),0;sin(sita1),cos(sita1),0,0;0,0,1,d1;0,0,0,1];
B =[cos(sita2),0,-sin(sita2),l1*cos(sita2);sin(sita2),0,cos(sita2),l1*sin(sita2);0,-1,0,d2;0,0,0,1];
C=A*B;
4 楼
飞行动力 [专家分:0] 发布于 2007-10-12 16:29:00
首先表示感谢!!!万分感谢
提示说:All rows in the bracketed expression must have the same
number of columns.
怎么回事?
不好意思啊^
5 楼
junlee [专家分:110] 发布于 2007-10-12 17:01:00
呵呵不客气!
你看看你的程序里面A、B矩阵的大小是不是一样的
我这里运行时A、B都是4*4的矩阵,是你问题中所给的式子
6 楼
飞行动力 [专家分:0] 发布于 2007-10-12 17:23:00
我是复制,粘贴了的啊
7 楼
xjrjwt [专家分:0] 发布于 2007-10-17 23:25:00
我的也是对的啊!
8 楼
sgyin [专家分:0] 发布于 2007-10-17 23:31:00
矩阵中有未知符号,故应定义符号变量,这样就可以以符号变量计算出来结果。
我来回复