Correct Schur decomposition for 2x2 matrices

Due to rounding and possible loss of precision the lower left element of the 2x2 matrix
may be different from zero.
This commit is contained in:
daingun 2019-11-01 22:12:59 +01:00 committed by Sébastien Crozet
parent 549d0dd2dd
commit 667c49d0e1
1 changed files with 1 additions and 0 deletions

View File

@ -413,6 +413,7 @@ where
let inv_rot = rot.inverse(); let inv_rot = rot.inverse();
inv_rot.rotate(&mut m); inv_rot.rotate(&mut m);
rot.rotate_rows(&mut m); rot.rotate_rows(&mut m);
m[(1, 0)] = N::zero();
if compute_q { if compute_q {
// XXX: we have to build the matrix manually because // XXX: we have to build the matrix manually because