--- eigsR14b.m 2004-10-01 10:51:11.000000000 -0700 +++ eigsR14.m 2004-09-23 19:38:17.000000000 -0700 @@ -38,7 +38,6 @@ % OPTS.disp: diagnostic information display level [0 | {1} | 2] % OPTS.cholB: B is actually its Cholesky factor CHOL(B) [{0} | 1] % OPTS.permB: sparse B is actually CHOL(B(permB,permB)) [permB | {1:N}] -% OPTS.lutol: threshold pivoting tolerance for shift-invert [scalar | {0.1}] % % EIGS(AFUN,N) accepts the function AFUN instead of the matrix A. % Y = AFUN(X) should return @@ -212,7 +211,6 @@ info = int32(0); % use a random starting vector display = 1; cholB = 0; -lutol = 0.1; if (nargin >= (6-Amatrix-Bnotthere)) opts = varargin{6-Amatrix-Bnotthere}; @@ -345,17 +343,6 @@ ['Ignoring stagnation tolerance opts.stagtol' ... ' (no longer an option).']); end - - if isfield(opts,'lutol') - if ~isequal(size(opts.lutol),[1,1]) || ... - ~isreal(opts.lutol) || (opts.lutol<=0) - error('MATLAB:eigs:InvalidOptsTol',... - ['Threshold tolerance opts.lutol must be a strictly' ... - ' positive real scalar.']) - else - lutol = full(opts.tol); - end - end end @@ -539,7 +526,7 @@ AsB = A - sigma * B; end end - [L,U,P,Q] = lu(AsB, lutol); + [L,U,P,Q] = lu(AsB); [perm,dummy] = find(Q); else if isempty(B) @@ -722,9 +709,9 @@ workd(:,col2) = B * workd(:,col1); end if issparse(A) && issparse(B) - workd(perm,col2) = U \ (L \ (P * workd(:,col2))); + workd(perm,col2) = U \ (L \ (P * workd(:,col1))); else - workd(:,col2) = U \ (L \ (P * workd(:,col2))); + workd(:,col2) = U \ (L \ (P * workd(:,col1))); end elseif (ido == 1) if issparse(A) && issparse(B)