Mercurial > octave
diff scripts/linear-algebra/ishermitian.m @ 26592:c0fa4a9eef95
Ensure boolean value when checking sparse matrices for symmetry/hermiticity.
* scripts/linear-algebra/ishermitian.m, cripts/linear-algebra/issymmetric.m:
In case of sparse matrix input, return a single 1 byte boolean value, not a
25 byte sparse matrix with exactly one entry.
author | Kai T. Ohlhus <k.ohlhus@gmail.com> |
---|---|
date | Tue, 22 Jan 2019 07:06:37 +0100 |
parents | 00f796120a6d |
children | b442ec6dda5c |
line wrap: on
line diff
--- a/scripts/linear-algebra/ishermitian.m Mon Jan 21 22:34:03 2019 -0800 +++ b/scripts/linear-algebra/ishermitian.m Tue Jan 22 07:06:37 2019 +0100 @@ -82,7 +82,7 @@ if (strcmp (skewopt, "nonskew")) if (tol == 0) ## check for exact symmetry - retval = ! any ((A != A')(:)); + retval = full (! any ((A != A')(:))); else if (islogical (A)) ## Hack to allow norm to work. Choose single to minimize memory. @@ -94,7 +94,7 @@ else ## skew-Hermitian if (tol == 0) - retval = ! any ((A != -A')(:)); + retval = full (! any ((A != -A')(:))); else if (islogical (A)) ## Hack to allow norm to work. Choose single to minimize memory. @@ -114,7 +114,7 @@ %!assert (ishermitian ([1, 2; 2, 1])) %!assert (ishermitian ([1, 2.1; 2, 1.1], 0.2)) %!assert (ishermitian ([1, -2i; 2i, 1])) -%!assert (ishermitian (speye (100))) +%!assert (ishermitian (speye (100)), true) # Return full logical value. %!assert (ishermitian (logical (eye (2)))) %!assert (! ishermitian (logical ([1 1; 0 1]))) %!assert (ishermitian (logical ([1 1; 0 1]), 0.5))