I'm trying to get matrix that only has the diagonal and the first subdiagonal values only. Say I have a 4×4 matrix
A=[ 1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16]
I want to get a matrix
B=[1 2 0 0; 0 6 7 0; 0 0 11 12; 0 0 0 16].
I know using
diag(diag(A))
will give me a 4×4 matrix with the diagonal but the part I'm hung up on is getting the subdiagonal in the form of a 4×4 matrix, I used
diag(diag(A,1))
and it gave me a 3×3 matrix of the subdiagonal. To conclude, is there a way of getting a subdiagonal in the original matrix dimensions?
Best Answer