diag
description:
D = diag(A,k) produces diagonal matrices or extracts diagonals of a matrix A.
diag(V,K) when V is a vector with n components is a square matrix of order n+ABS(k) with the elements of V on the k-th diagonal. k = 0 is the main diagonal, k > 0 is above the main diagonal and k < 0 is below the main diagonal.
diag(V) is the same as diag(V,0) and puts V on the main diagonal.
diag(X,k) when X is a matrix is a column vector formed from the elements of the k-th diagonal of X.
diag(X) is the main diagonal of X.
arguments:
A is a vector or matrix of NCpolys
k is an integer
output:
vector or matrix of NCpolys
possible usage:
diag(A), diag(A,k)
example:
>> diag([x x^2 x*y-y*x])
ans = x 0 0
0 x^2 0
0 0 x*y-y*x
>> diag([x x^2 x*y-y*x],1)
ans = 0 x 0 0
0 0 x^2 0
0 0 0 x*y-y*x
0 0 0 0
>> A=[x x^2 x*y-y*x; y x*y 2*x-y]
A = x x^2 x*y-y*x
y x*y 2*x-y
>> diag(A)
ans = x
x*y
>> diag(A,1)
ans = x^2
2*x-y