changeset 31944:c687e0ba6606 stable

lu: Add self-test with complex valued input. * libinterp/corefcn/lu.cc: Add a self-test with complex valued input. Thanks to Dmitri A. Sergatskov for providing that test case. See also: https://octave.discourse.group/t/4289/13
author Markus Mützel <markus.muetzel@gmx.de>
date Fri, 31 Mar 2023 17:25:29 +0200
parents 7faaf2c6aaec
children 2a75c771c451 0ed6d1f01625
files libinterp/corefcn/lu.cc
diffstat 1 files changed, 10 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/libinterp/corefcn/lu.cc	Fri Mar 24 15:21:45 2023 -0400
+++ b/libinterp/corefcn/lu.cc	Fri Mar 31 17:25:29 2023 +0200
@@ -539,6 +539,16 @@
 %! assert (u, single ([5, 6; 0, 4/5]), sqrt (eps ("single")));
 %! assert (p(:,:), single ([0, 0, 1; 1, 0, 0; 0 1 0]), sqrt (eps ("single")));
 
+# complex matrix input
+%!test
+%! C = [1, 0, 1, 0;
+%!      1i, 1/3, -1i, 1/3;
+%!      1, 2i/3, 1, -2i/3;
+%!      1i, -1/3, -1i, -1/3];
+%! [L, U, P] = lu (C);
+%! assert (rcond (C), 1/8, eps);
+%! assert (norm (P'*L*U - C, Inf) < eps);
+
 %!testif HAVE_UMFPACK
 %! Bi = [1 2 3 4 5 2 3 6 7 8 4 5 7 8 9];
 %! Bj = [1 3 4 5 6 7 8 9 11 12 13 14 15 16 17];