How do I specify the diagonal elements of a matrix?

80 views (last 30 days)
I have some values, taken from another matrix. How do I specify them to be the diagonals of a new matrix?

Answers (2)

Matt Tearle
Matt Tearle on 13 Feb 2011
To do a subscripted assignment into the diagonal of a matrix, you can use linear indexing:
A(1:n+1:end) = v
(where v is an n-element vector and n is the number of rows of A). So, for example,
A(1:n+1:end) = diag(B)
copies the diagonal of B into A.
  5 Comments
Walter Roberson
Walter Roberson on 5 Mar 2020
n:n-1:end-n+1 for backwards diagonal on a square matrix

Sign in to comment.


Bruno Luong
Bruno Luong on 13 Feb 2011
Take a look at DIAG function
help diag

Categories

Find more on Operating on Diagonal Matrices in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!