Mercurial > octave-nkf
diff test/diag-perm.tst @ 20603:f61c67865d9f
Don't return A for inv (A) when A is a singular Diagonal matrix (bug #46103).
* dDiagMatrix.cc (inverse), fDiagMatrix.cc (inverse): return octave_Inf for the
inverse of a diagonal element whose value is 0.
* test/diag-perm.tst: Add tests for new behavior.
author | Rik <rik@octave.org> |
---|---|
date | Wed, 07 Oct 2015 07:41:44 -0700 |
parents | 4197fc428c7d |
children |
line wrap: on
line diff
--- a/test/diag-perm.tst Tue Oct 06 22:14:41 2015 +0200 +++ b/test/diag-perm.tst Wed Oct 07 07:41:44 2015 -0700 @@ -263,3 +263,10 @@ %! A = A * I () + A; %! A(6, 4) = nan (); %! assert (full (D - A), D - full (A)); + +## inverse preserves diagonal structure even for singular matrices (bug #46103) +%!test +%! x = diag (1:3); +%! assert (inv (x), diag ([1 1/2 1/3])); +%! x = diag (0:2); +%! assert (inv (x), diag ([Inf 1 1/2]));