Open dswatson opened 2 months ago
Yeah, this is actually a design choice. eigs()
tries to automatically detect the type of the matrix, and if it is dsCMatrix
/dsRMatrix
/dsyMatrix
, it will directly call the symmetric solver. On the other hand, eigs_sym()
in some sense "forces" the symmetry of the matrix, so I did not let it work on matrices that are already symmetric.
That makes sense, thanks! Resolves my issue. Perhaps this could be a bit clearer in the documenation? Or maybe instead of an error, eigs_sym()
could just run eigs()
internally when the input is of class dsCMatrix
?
Yeah, good suggestion. This is actually documented in the help, but I agree that it can be made clearer.
I may change it in the next release.
Thanks for this great package! Was wondering if you could help with a issue.
The documentation suggests that
eigs_sym()
should be able to handle sparse matrix input, but there appears to be some subtleties to handling sparsity in symmetric matrices. Specifically, I get an error when I run this code:The last line generates the following error:
Interestingly, I do not get the same error when passing a
dgeMatrix
toeigs_sym
. Hopefully this is an easy fix?