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

Asked:

on 10 Jul 2012

Community Treasure Hunt

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

Start Hunting!