How can I get the upper triangular matrix without using triu()?
38 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I was able to get the lower triangular matrix by using A(:, 1:end-1), A being my function + argumented matrix but I need to get the upper triangular matrix.
The matrix is Aug= a matrix 3x3, b= 1x3. (A = [Aug b])
3 comentarios
Voss
el 27 de Feb. de 2022
@Jessica Avellaneda Please see my answer, which does not use triu() except to show that the result is correct, which is a part you can omit.
Respuestas (1)
Voss
el 25 de Feb. de 2022
Editada: Voss
el 27 de Feb. de 2022
You can set all elements below the main diagonal to zero, e.g., using a for loop:
% A matrix, pick any size you want:
A = randn(5,6);
disp(A);
% zero out the elements below the diagonal to make it upper-triangular:
A_ut = A;
for ii = 1:size(A,2)
A_ut(ii+1:end,ii) = 0;
end
disp(A_ut);
% make sure this gives the same result as triu(A):
isequal(A_ut,triu(A))
0 comentarios
Ver también
Categorías
Más información sobre Operating on Diagonal Matrices en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!