Please note that the recommended version of Scilab is 2026.0.0. This page might be outdated.
See the recommended documentation of this function
diag
diagonal including or extracting
Calling Sequence
[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
    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,...).
Examples
| << Elementary matrices | Elementary matrices | eye >> |