A question about product operation

1 次查看(过去 30 天)
Hello all!
I'm not sure if this was explained before, but I could not find any answer to this.
So, if i have x=[a b c] and y=[d e f] I'd like to know (if it's possible) how I could obtain:
.
z=
h i j
k l m
n o p
where:
h=a*d k=a*e n=a*f
i=b*d l=b*e o=b*f
j=c*d m=c*e p=c*f
Thanks!

采纳的回答

Jan
Jan 2013-9-16
编辑:Jan 2013-9-16
x = [1, 2, 3]
y = [10, 20, 30]
z = x' * y
The matrix multiplication of a column vector with a row vector replies the dyadic product. x*y' would reply the dot-product.
Slower alternative:
z = bsxfun(@times, x', y)
  6 个评论
Sean de Wolski
Sean de Wolski 2013-9-17
Of course you could also put this inside of a MATLAB function block.
Jan
Jan 2013-9-17
Dan p wrote:
I also tried to use the blocks from the "User-defined functions" but I did not succeed.
Please show us, what you have tried and explain "did not succeed" with details.

请先登录,再进行评论。

更多回答(1 个)

Simon
Simon 2013-9-16
编辑:Simon 2013-9-16
Hi!
x = [1, 2, 3]; % row vector
y = [2; 3; 4]; % column vector
z = y * x;

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by