有效地乘以向量

Cap*_*rog 3 matlab matrix-multiplication

我有两个列形式的向量,例如:

a = 1
    2
    3
    4
    5

b = 2
    1
    3
    5
    4
Run Code Online (Sandbox Code Playgroud)

我使用以下代码检索每个产品:

for i = 1 : length(a)
    ab(i) = a(i) * b(i);       
end
Run Code Online (Sandbox Code Playgroud)

这给出了:

ab = 2
     2
     9
     20
     20
Run Code Online (Sandbox Code Playgroud)

这很好,它产生了正确的答案,但似乎效率不高; 我认为必须有一种没有'for'循环的语法方法吗?

Hig*_*ark 8

尝试

a.*b

注意.之前*告诉Matlab按元素执行乘法元素.