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

2 Ansichten (letzte 30 Tage)
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?

Akzeptierte Antwort

James Tursa
James Tursa am 21 Dez. 2020
Bearbeitet: James Tursa am 21 Dez. 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 Kommentar
Biljana Gjeroska
Biljana Gjeroska am 21 Dez. 2020
Thanks a lot. I was thinking that the numerical deviation is already taken into account. But here I need to build it manually :)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Communitys

Weitere Antworten in  Distance Learning Community

Kategorien

Mehr zu Resizing and Reshaping Matrices finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by