How to use a matrix of 12*12 to form a matrix of 96*96?
    5 views (last 30 days)
  
       Show older comments
    
If B is a 12*12 matrix, and I want to place this B matrix as diagonal matrix of 96*96, How to form this 96*96 diagonal matrix?
4 Comments
Accepted Answer
More Answers (1)
  Paul
      
      
 on 22 Sep 2021
        It's too bad we can't do something like this:
B = [1 2;3 4]; repeats = 2; % use a smaller example
% R = blkdiag(repmat({B},1,repeats){:})  % throws error
and instead have to do this
R = blkdiag(struct('temp',repmat({B},1,repeats)).temp)
1 Comment
  Stephen23
      
      
 on 22 Sep 2021
				Simpler:
B = {[1,2;3,4]};
R = 2; % use a smaller example
M = blkdiag(B{ones(1,R)})
See Also
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!


