diff scripts/linear-algebra/null.m @ 7795:df9519e9990c

Handle single precision eps values
author David Bateman <dbateman@free.fr>
date Mon, 12 May 2008 22:57:11 +0200
parents a1dbe9d80eee
children eb63fbe60fab
line wrap: on
line diff
--- a/scripts/linear-algebra/null.m
+++ b/scripts/linear-algebra/null.m
@@ -52,7 +52,11 @@
     endif
 
     if (nargin == 1)
-      tol = max (size (A)) * s (1) * eps;
+      if (isa (A, "single"))
+	tol = max (size (A)) * s (1) * eps ("single");
+      else
+	tol = max (size (A)) * s (1) * eps;
+      endif
     elseif (nargin != 2)
       print_usage ();
     endif
@@ -61,7 +65,11 @@
 
     if (rank < cols)
       retval = V (:, rank+1:cols);
-      retval(abs (retval) < eps) = 0;
+      if (isa (A, "single"))
+	retval(abs (retval) < eps ("single")) = 0;
+      else
+	retval(abs (retval) < eps) = 0;
+      endif
     else
       retval = zeros (cols, 0);
     endif