matrix playing
3 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hi all
i have
w1 =
1.0000 1.0000 1.0000 1.0000 1.0000 1.0000
1.0000 1.0002 1.0000 1.0001 1.0000 1.0001
I want a new matrix with product of all terms in each 2x2 matrix in w1
Eventually, I need a 1x3 matrix.
If I use prod(w1), only the columns get multiplied.
Can anyone help please
0 Commenti
Risposta accettata
Walter Roberson
il 14 Ott 2011
blkproc(w1,[2 2],@prod)
4 Commenti
Walter Roberson
il 14 Ott 2011
x is the "formal argument" for the anonymous function. It is nearly exactly like the x in
proc result = multiplyblock(x)
result = prod(x(:));
end
Più risposte (1)
Image Analyst
il 14 Ott 2011
Looks like a job for blockproc().
% Generate sample data.
w1 =[...
1.0000 4.0000 1.0000 2.0000 1.0000 6.0000;
1.0000 1.0002 1.0000 1.0001 1.0000 1.0001]
% Declare a function
fun = @(block_struct) prod(block_struct.data(:))
% Do the job:
result = blockproc(w1,[2 2], fun)
Note I changed w1 to make it easier to see that it actually did the job.
Vedere anche
Categorie
Scopri di più su Interactive Control and Callbacks in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!