我正在尝试简化我的代码,但遇到了一个小问题。让
v = [1; 2; 3];
a1 = [4; 5; 6];
a2 = [7; 8; 9];
A = [a1, a2];
我的目标是计算
u = [v.*a1, v.*a2]
仅使用v
一度。这可能吗?
是的,你可以使用bsxfun, 例如:
u = bsxfun(@times,A,v);
或者也可以使用repmat
u= repmat(v,[1 2]).*A;
或者也可以使用kron
u= kron(v,[1 1]).*A;
或者最后,仅使用矩阵乘法:
u = v*[1 1].*A;
我确信还有更多方法,但我就到此为止......
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)