Problem 2813. Create a block diagonal matrix
A block diagonal matrix is a square matrix that can be written as
A = [a 0 0 0 0 b 0 0 0 0 c 0 0 0 0 ...]
where a, b, c etc. are all square matrices.
Construct A such that
A = [a 0 0 0 0 a 0 0 0 0 a 0 0 0 0 ...]
where a is allowed to be non-square or empty and occurs n times. n is always an integer greater than or equal to 0.
Examples:
a = [1 2 3], n = 3
gives
A = [1 2 3 0 0 0 0 0 0 0 0 0 1 2 3 0 0 0 0 0 0 0 0 0 1 2 3]
Solution Stats
Problem Comments
-
2 Comments
Masato Kanematsu
on 1 Oct 2020
If you know a function which is used to create a matrix, you can solve this problem easily !
Dyuman Joshi
on 27 Dec 2020
I thought you referred to the function blkdiag(), but I am surprised to know that it is not the case (for a one-liner)!
Solution Comments
Show commentsProblem Recent Solvers142
Suggested Problems
-
2387 Solvers
-
Renaming a field in a structure array
1548 Solvers
-
Create logical matrix with a specific row and column sums
311 Solvers
-
244 Solvers
-
Find my daddy long leg (No 's')
2459 Solvers
More from this Author1
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!