

I learned my lesson and stopped using it for evaluation of objective function, gradient, Hessian, constraints, Jacobiian, etc. I.e., my recommendation is to call eig rather than eigs regardless of the value of largescale. You can increase opts.maxit, but my suggestion is to call eig instead of eigs. If you look at the code, you can see some finagling with opts.tol, but opts.maxit is left at its default value of 300. You can increase opts.,maxit or opts.tol, but it still can not be relied on to converge at all points in the middle of an optimization. If largescale is true and K <= min(M,N)/2, eigs is called in line 100, which is: = eigs( X, K, SIGMA, opts ) Įigs is very unreliable in my experience. <-Įig is called in line 67 or 69 of TFOCS version 1.3.1 of prox_trace.m if largescale is false. –> EDIT: However, googling shows me that this error message does occasionally occur with eig. Are you sure it’s not eigs which is the culprit?
