octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #49523] eigs (R2013b and later) uses NaNs, not


From: anonymous
Subject: [Octave-bug-tracker] [bug #49523] eigs (R2013b and later) uses NaNs, not zeros, for unconverged Ritz values
Date: Mon, 10 Apr 2017 12:22:19 -0400 (EDT)
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Firefox/52.0

Follow-up Comment #6, bug #49523 (project octave):

Original submitter here.  

@Marco: The MathWorks has their own private fork of the original ARPACK source
with various changes of their own, which probably explains why you are seeing
different behaviors regarding the eigenvectors of non-converged Ritz values in
Matlab compared to ARPACK and arpack-ng.

@Marco, @Rik: an argument against using nans for eigenvecotors whose Ritz
values did not converge is that returning a large number of nans will take
longer than just returning zeros (or using whatever values are already set for
these eigenvectors).  On my laptop, setting up an array of 1 million nans
takes about 10 times longer than 1 million zeros.  Perhaps it's a negligible
cost but I personally don't see that it's necessary to use nans.  The user
already has to check which, if any, eigenvalues are nans.  At that point, it
should be clear to the user which eigenvectors are good and which are to be
ignored.  That said, I could see a user using an eigenvector without checking
if its Ritz value converged!

In my eigsPlus package, I avoided this issue altogether by only returning the
converged eigenvalues (and eigenvectors).  ;-)  I believe I also suggested
this to The MathWorks long ago but they didn't want to change that.  

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?49523>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]