Variable number of input matrices in a function
Afficher commentaires plus anciens
I want to change the code below so the function blkdiag can take on any number of matrices A, based on the value of N.
N = 3;
A_1 = sparse(1:N,1:N,-1*ones(N,1),N,N+1);
A_2 = sparse(1:N,2:N+1,1*ones(N,1),N,N+1);
A = A_1+A_2;
out = full(blkdiag(A,A,A))
So suppose N=4, then
out = full(blkdiag(A,A,A,A))
And so on.
How can I create a variable input for this function, based on a value?
Thanks,
Tim
3 commentaires
madhan ravi
le 4 Fév 2019
Modifié(e) : madhan ravi
le 4 Fév 2019
A = {A_1+A_2};
A=repelem(A,N);
out = full(blkdiag(horzcat(A{:}))) % or
out = full(blkdiag(vertcat(A{:})))
Tim de Reijer
le 4 Fév 2019
Modifié(e) : Tim de Reijer
le 4 Fév 2019
madhan ravi
le 4 Fév 2019
Modifié(e) : madhan ravi
le 4 Fév 2019
True , apologies didn't verify the results.
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Multidimensional Arrays dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!