[Matlab Grader] How to check if the matrix has upper triangular form?

5 visualizaciones (últimos 30 días)
Hi,
I want to build a test that checks if a matrix has an upper triangular form. But somehow it didn't work in Matlab Grader.
I tried to use the matlab function istriu
A = [1.6537 1.1405 1.2570;
0.0000 0.9661 0.6341;
-0.0000 0.0000 0.8816;
-0.0000 -0.0000 -0.0000;
-0.0000 0.0000 0]
isUpper = istriu(A)
but it gives me always zero back, even though the matrix is upper triangular. When I am doing it locally, it gives me the right answer.
Does someone know why is this happening and how can I solve it?

Respuesta aceptada

James Tursa
James Tursa el 21 de Dic. de 2020
Editada: James Tursa el 21 de Dic. de 2020
This looks like a display issue. The numbers in the lower triangle are not exactly zero, they just display that way out to 4 digits. Take a look at this result:
A == 0
and you will likely see that some of those lower triangular elements are not exactly 0.
  1 comentario
Biljana Gjeroska
Biljana Gjeroska el 21 de Dic. de 2020
Thanks a lot. I was thinking that the numerical deviation is already taken into account. But here I need to build it manually :)

Iniciar sesión para comentar.

Más respuestas (0)

Comunidades de usuarios

Más respuestas en  Distance Learning Community

Categorías

Más información sobre Matrix Indexing 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!

Translated by