Ah I see so you can just stop computing the eigenvectors when the eigenvalues are too small. That does seem more efficient and then the zero values are left as literally 0. I think I should back up and implement the patch that way.
The original question stands then -- what to do about the singularity threshold parameter given the existence of a constructor with the signature already? because that is where it belongs. Adding an extra boolean flag dodges that question; it feels a little funny just because then we should have similar logic for other decompositions. I think I remember the LU one stops early, always. On Wed, Oct 23, 2013 at 4:50 PM, Ted Dunning <ted.dunn...@gmail.com> wrote: > On Wed, Oct 23, 2013 at 3:14 PM, Sean Owen <sro...@gmail.com> wrote: > >> EigenDecomposition resembles QR in this respect, as far as they are >> implemented here. This argues for them to treat arguments similarly. >> > > Actually not. It is quite reasonable for the EigenDecomposition to stop > when singularity is reached. This affects the shape of the eigenvector > matrix. > > Perhaps add a new constructor with a double tolerance and a boolean that > says to stop early. QR is subject to the same logic since partial QR is > often more useful than full QR with singular R. This is the same logic as > with Cholesky since QR and Cholesky are two sides of the same coin in many > respects. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org