Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
diag
diagonal including or extracting
Syntax
y = diag(vm) y = diag(vm, k)
Arguments
- vm
vector or matrix (full or sparse storage)
- k
integer (default value 0)
- y
vector or matrix
Description
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 blockdiag
.
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,...).
Examples
See also
Report an issue | ||
<< blockdiag | Matrix generation | empty [] >> |