# HG changeset patch # User jwe # Date 791042783 0 # Node ID 5eeb61cac52e7f9f6aa38c7d4f8717618c0fefab # Parent 32ff7b6638a0b5daccea2408922f7710209d9f53 [project @ 1995-01-25 14:04:13 by jwe] diff -r 32ff7b6638a0 -r 5eeb61cac52e scripts/linear-algebra/null.m --- a/scripts/linear-algebra/null.m Tue Jan 24 14:12:29 1995 +0000 +++ b/scripts/linear-algebra/null.m Wed Jan 25 14:06:23 1995 +0000 @@ -34,7 +34,13 @@ [rows, cols] = size (A); - s = diag (S); + [S_nr, S_nc] = size (S); + + if (S_nr == 1 || S_nc == 1) + s = S(1); + else + s = diag (S); + endif if (nargin == 1) tol = max (size (A)) * s (1) * eps; diff -r 32ff7b6638a0 -r 5eeb61cac52e scripts/linear-algebra/orth.m --- a/scripts/linear-algebra/orth.m Tue Jan 24 14:12:29 1995 +0000 +++ b/scripts/linear-algebra/orth.m Wed Jan 25 14:06:23 1995 +0000 @@ -34,7 +34,13 @@ [rows, cols] = size (A); - s = diag (S); + [S_nr, S_nc] = size (S); + + if (S_nr == 1 || S_nc == 1) + s = S(1); + else + s = diag (S); + endif if (nargin == 1) tol = max (size (A)) * s (1) * eps; diff -r 32ff7b6638a0 -r 5eeb61cac52e scripts/linear-algebra/trace.m --- a/scripts/linear-algebra/trace.m Tue Jan 24 14:12:29 1995 +0000 +++ b/scripts/linear-algebra/trace.m Wed Jan 25 14:06:23 1995 +0000 @@ -26,6 +26,11 @@ usage ("trace (x)"); endif - y = sum (diag (x)); + [nr, nc] = size (x); + if (nr == 1 || nc == 1) + y = x(1); + else + y = sum (diag (x)); + endif endfunction