diag — diagonal including or extracting
[y]=diag(vm, [k])
for vm
a (row or column) n-vector diag(vm)
returns a diagonal
matrix with entries of vm
along the main diagonal.
diag(vm,k)
is a (n+abs(k))x(n+abs(k))
matrix with the entries
of vm
along the kth diagonal. k=0
is the main diagonal
k>0
is for upper diagonals and k<0
for lower
diagonals.
For a matrix vm
, diag(vm,k)
is the column vector made of entries
of the kth diagonal of vm
. diag(vm)
is the main diagonal of vm
.
diag(diag(x))
is a diagonal matrix.
If vm
is a sparse matrix diag(vm,k)
returns a
sparse matrix.
To construct a diagonal linear system, use sysdiag
.
Note that eye(A).*A
returns a diagonal matrix made with the
diagonal entries of A
. This is valid for any matrix (constant,
polynomial, rational, state-space linear system,...).