24小时热门版块排行榜    

CyRhmU.jpeg
查看: 660  |  回复: 4

ruguoniaiwo

金虫 (正式写手)

[求助] 请问matlab计算的一个问题

想用一个n*1的向量分别乘以一个n*3的矩阵的每一列,得到一个n*3的矩阵,请问该怎么编写命令?
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

biezhuzi

金虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
ruguoniaiwo: 金币+5, ★★★★★最佳答案, 谢啦 2013-07-02 11:31:55
A为n×1矩阵;
B为n×3矩阵;
设C=ones(1,3);
你要的结果就是:result=(A*C).*B;
或者:result=(A*ones(1,3)).*B;
不以物喜,不以己悲
2楼2013-07-02 09:47:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ajitai

铁杆木虫 (职业作家)

二楼正解
3楼2013-07-02 10:49:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ruguoniaiwo

金虫 (正式写手)

引用回帖:
2楼: Originally posted by biezhuzi at 2013-07-02 09:47:55
A为n×1矩阵;
B为n×3矩阵;
设C=ones(1,3);
你要的结果就是:result=(A*C).*B;
或者:result=(A*ones(1,3)).*B;

我想再问一个问题。我解一个含有参数的方程,不是线性的。参数为啊a,b,c,d。求x。但是我的abcd都是列向量,意思就是,参数abcd的值不只是一组,我想一次解出来的x也是一个列向量,请问这个怎么编程?
4楼2013-07-03 19:17:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

biezhuzi

金虫 (正式写手)

因为你没有具体的方程形式,我的感觉是,你的参数是一组时怎么解的,你的参数是多组时也怎么解,只是碰到列向量与列向量相乘时用点乘即可。
或者用循环的方法也行。

另外,建议楼主多读读关于matlab的书,了解一下matlab运算上的特点,抓好matlab是怎么看待矩阵这个概念的。
不以物喜,不以己悲
5楼2013-07-04 08:46:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 ruguoniaiwo 的主题更新
信息提示
请填处理意见