MATLAB Answers

121 by 121 Sparse Matrix

3 views (last 30 days)
SA
SA on 23 Apr 2019
Commented: SA on 23 Apr 2019
I want to create a sparse matrix (121 by 121) with A repeating in the main diagonal.
I wrote a code below to create my 11 by 11 matrix A but how do i get a 121 by 121 sparse matrix with A repeating in the main diagonal.
n = 11;
D = sparse(1:n,1:n,-4*ones(1,n),n,n);
full(D);
E = sparse(2:n,1:n-1,ones(1,n-1),n,n);
E(11,10)=2;
full(E);
F = sparse(1:n-1,2:n,ones(1,n-1),n,n);
F(1,2)=2;
full(F);
S = E+D+F;
A=full(S)

Accepted Answer

Walter Roberson
Walter Roberson on 23 Apr 2019
temp = repmat({S}, 1, 11);
result = blkdiag(temp{:});
  1 Comment
SA
SA on 23 Apr 2019
It worked perfectly. Thanks a million

Sign in to comment.

More Answers (0)

Tags

No tags entered yet.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!