creating multidiagonal matrix from a basic square matrix

8 visualizzazioni (ultimi 30 giorni)
For a finite difference code I need to create a multidiagonal matrix from a basic square matrix A:
How can I do this without using a for loop?

Risposta accettata

Andrei Bobrov
Andrei Bobrov il 8 Ott 2017
Modificato: Andrei Bobrov il 8 Ott 2017
A = magic(3);
n = 8;
B = repmat({A},1,n);
out = blkdiag(B{:});

Più risposte (0)

Categorie

Scopri di più su Creating and Concatenating Matrices 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!

Translated by