Matrices in a matrix

2 views (last 30 days)
UGO mela
UGO mela on 15 May 2017
Edited: Stephen23 on 15 May 2017
I have this matrix in which there are 9 different matrices each one is composed by 6 * 6 elements
I want pre and post multiply each matrix-elements in this way:
A is a matrix with the same size of R
P.S. : I have store R and A as a sparse matrices
How can I do?
Thanks

Accepted Answer

David Goodmanson
David Goodmanson on 15 May 2017
Edited: David Goodmanson on 15 May 2017
Hi UGO, should your top row read R11, R12, R13? at any rate, try
z = zeros(size(A));
C = [A z z;z A z;z z A];
B = C.'*R*C
where C is a block diagonal matrix.
  1 Comment
UGO mela
UGO mela on 15 May 2017
Edited: Stephen23 on 15 May 2017
It works perfectly!
Thanks!

Sign in to comment.

More Answers (1)

John
John on 15 May 2017
try
% if A is 6x6
A = rand(6);
A = repmat(A,3);
% if R is 18x18, constructed from multiple 6x6 sub Rij matrices
B = A'*R*A

Categories

Find more on Operating on Diagonal Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!