matrix in a cell multiplicaiton

I got two cells and each cell contain three matrix.
{matrix_1 matrix_2 matrix_3}and {matrix_4 matrix_5 matrix 6}
I want to multiply two matrix together in a matrix-wise fashion, NOT element wise by using 'cellfun'.
I was wondering if cellfun(@(v,w) v*w,cell1, cell2.'un',0) is correct, does it compute in a matrix wise fashion?
Cheers
Jing

2 Comments

Maybe you wrote it in a hurry but change it to cellfun(@(v,w) v*w,cell1, cell2,'UniformOutput',0)
@Jing Hua: I suggest that you try it and check the results.

Sign in to comment.

 Accepted Answer

Yes, I like CELLFUN also. But if it causes troubles, why not using a loop?
Result = cell(size(cell1));
for i = 1:numel(cell1)
Result{i} = cell1{i} * cell2{i};
end
I assume this runs even faster then CELLFUN, but I cannot test this currently. Without doubt it is faster to write and to debug.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Asked:

on 10 Jul 2012

Community Treasure Hunt

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

Start Hunting!