multiplying multiple values inside multiple matrices

Hello,
I have multiple matrices (all quite large, of equal size) that all need to be multiplied into a final matrix. For example, if I have a matrix [2, 2] and another [3, 2], I need to find a way to multiply these two to obtain [6, 4]. The trick being that each matrix value is multiplied by the corresponding value in the same location in all the other matrices.
Thanks

1 件のコメント

Azzi Abdelmalek
Azzi Abdelmalek 2013 年 9 月 24 日
編集済み: Azzi Abdelmalek 2013 年 9 月 24 日
If
A=[1 2;3 4]
B=[1 2;3 4;5 6]
What is the expected result?

サインインしてコメントする。

 採用された回答

Image Analyst
Image Analyst 2013 年 9 月 24 日

2 投票

Since they are all of the same size, and you want to multiply them element by element, you can simply dot multiply:
c1 = a .* b; % For only two matrices.
c2 = a .* b .* c .* d .* e; % for 5 matrices.

1 件のコメント

Image Analyst
Image Analyst 2013 年 9 月 24 日
For your new question on means:
meanOf2 = (a + b) / 2; % Mean of two matrices.
meanOf5 = (a+b+c+d+e)/5; % Mean of 5 matrices.

サインインしてコメントする。

その他の回答 (1 件)

Azzi Abdelmalek
Azzi Abdelmalek 2013 年 9 月 24 日

0 投票

Maybe this is what you want
A=[1 2;3 4]
B=[1 2;3 4;5 6]
out=cell2mat(arrayfun(@(x) x*B,A,'un',0))

3 件のコメント

Azzi Abdelmalek
Azzi Abdelmalek 2013 年 9 月 24 日
I gave an example, what is the expected result?
Image Analyst
Image Analyst 2013 年 9 月 24 日
Your example did not fit his requirement of "of equal size".
Azzi Abdelmalek
Azzi Abdelmalek 2013 年 9 月 24 日
I took [2, 2] , [3, 2] for the sizes

サインインしてコメントする。

カテゴリ

ヘルプ センター および File Exchange で Multidimensional Arrays についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by