Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Don't throw in sparse LU for singular matrices. Fixes #13781. #13784

Merged
merged 1 commit into from
Oct 28, 2015

Conversation

andreasnoack
Copy link
Member

This is similar to what we do in the dense case and it avoids the error when trying to compute the determinant of a singular sparse matrix. I've also changed the exception thrown when trying to solve with a singular matrix to SingularException, but here I set the numrical value to zero. In the dense case, the number is the smallest zero pivot index.

@tkelman
Copy link
Contributor

tkelman commented Oct 27, 2015

Does umfpack provide the first zero pivot information?

@kshyatt kshyatt added the linear algebra Linear algebra label Oct 27, 2015
@andreasnoack
Copy link
Member Author

I've read the documentation in the header files as well as looked at the source for the factorizations and he doesn't seem to keep track of the location of the zero pivots - only the total count. We can of course compute it from U, but it's quite some overhead for a calculating a number that very few cares about. It would also require some restructuring of the error reporting so I'm not sure it's worth the trouble.

andreasnoack added a commit that referenced this pull request Oct 28, 2015
Don't throw in sparse LU for singular matrices. Fixes #13781.
@andreasnoack andreasnoack merged commit 344fdc2 into master Oct 28, 2015
@andreasnoack andreasnoack deleted the anj/umf branch October 28, 2015 15:41
andreasnoack added a commit that referenced this pull request Oct 31, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
linear algebra Linear algebra
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants