Variable number of input matrices in a function
古いコメントを表示
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 件のコメント
madhan ravi
2019 年 2 月 4 日
編集済み: madhan ravi
2019 年 2 月 4 日
A = {A_1+A_2};
A=repelem(A,N);
out = full(blkdiag(horzcat(A{:}))) % or
out = full(blkdiag(vertcat(A{:})))
Tim de Reijer
2019 年 2 月 4 日
編集済み: Tim de Reijer
2019 年 2 月 4 日
madhan ravi
2019 年 2 月 4 日
編集済み: madhan ravi
2019 年 2 月 4 日
True , apologies didn't verify the results.
採用された回答
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Multidimensional Arrays についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!