diff scripts/sparse/bicg.m @ 21171:2935d56203a4 stable

Fix regressions caused by ismatrix definition change (partial fix bug #47036). * inputdlg.m: Test that linespec isnumeric. * uigetfile.m: Check that position property value isnumeric. * fminunc.m: Check that x0 isnumeric. * fsolve.m: Check that x0 isnumeric. * lsqnonneg.m: Check that inputs C & D are both isnumeric and ismatrix. * pqpnonneg.m: Check that inputs C & D are both isnumeric and ismatrix. * bicg.m: Check input A issquare. Rephrase error messages. * bicgstab.m: Check input A issquare. Rephrase error messages. * cgs.m: Check input A issquare. Rephrase error messages. * gmres.m: Check input A issquare. Rephrase error messages. Change BIST test to match new error message. * qmr.m: Check input A issquare. Rephrase error messages. * spconvert.m: Check nargin first. Simplify input validation. Wrap long error message to < 80 chars. * treeplot.m: Simplify input validation.
author Rik <rik@octave.org>
date Mon, 01 Feb 2016 22:59:43 -0800
parents df437a52bcaf
children 3be6a07e8bad
line wrap: on
line diff
--- a/scripts/sparse/bicg.m	Sat Jan 30 07:55:18 2016 -0800
+++ b/scripts/sparse/bicg.m	Mon Feb 01 22:59:43 2016 -0800
@@ -81,15 +81,14 @@
       fun = str2func (A);
       Ax  = @(x) feval (fun, x, "notransp");
       Atx = @(x) feval (fun, x, "transp");
-    elseif (isnumeric (A) && ismatrix (A))
+    elseif (isnumeric (A) && issquare (A))
       Ax  = @(x) A  * x;
       Atx = @(x) A' * x;
     elseif (isa (A, "function_handle"))
       Ax  = @(x) feval (A, x, "notransp");
       Atx = @(x) feval (A, x, "transp");
     else
-      error (["bicg: first argument is expected to " ...
-              "be a function or a square matrix"]);
+      error ("bicg: A must be a function or square matrix");
     endif
 
     if (nargin < 3 || isempty (tol))
@@ -116,8 +115,7 @@
       M1m1x  = @(x) feval (M1, x, "notransp");
       M1tm1x = @(x) feval (M1, x, "transp");
     else
-      error (["bicg: preconditioner is expected to " ...
-              "be a function or matrix"]);
+      error ("bicg: preconditioner M1 must be a function or matrix");
     endif
 
     if (nargin < 6 || isempty (M2))
@@ -134,8 +132,7 @@
       M2m1x  = @(x) feval (M2, x, "notransp");
       M2tm1x = @(x) feval (M2, x, "transp");
     else
-      error (["bicg: preconditioner is expected to " ...
-              "be a function or matrix"]);
+      error ("bicg: preconditioner M2 must be a function or matrix");
     endif
 
     Pm1x  = @(x) M2m1x  (M1m1x (x));