Discussion Overview
The discussion revolves around the search for freely available C or C++ libraries capable of calculating eigenvalues and eigenvectors for generalized eigenvalue problems, specifically of the form Au = LBu, where A and B are matrices, L is the eigenvalue, and u is the eigenvector. The scope includes recommendations for libraries, installation experiences, and issues encountered during usage.
Discussion Character
- Technical explanation
- Debate/contested
Main Points Raised
- One participant inquires about libraries for generalized eigenvalue problems, noting that the GNU Scientific Library only handles standard eigenvalue problems.
- Another participant suggests CLAPACK and mentions other resources like BLAS and Numerical Recipes, indicating that they may not directly address eigenvalue calculations.
- A later reply confirms that CLAPACK is suitable for the task and provides links for downloading and documentation, while also mentioning the challenges of installation and the need to understand matrix storage in memory.
- Another participant shares their experience with CLAPACK on a Mac, reporting an issue with the dgesv_() routine failing to detect a singular matrix in a specific case, and invites others to test the same scenario.
Areas of Agreement / Disagreement
Participants generally agree that CLAPACK can be used for generalized eigenvalue problems, but there is disagreement regarding its reliability in detecting singular matrices, as evidenced by the reported issue with the dgesv_() routine.
Contextual Notes
The discussion highlights limitations in the libraries mentioned, particularly regarding their capabilities with singular matrices and the potential for installation difficulties. There are also unresolved questions about the accuracy of solutions provided by CLAPACK.
Who May Find This Useful
This discussion may be useful for programmers and researchers interested in linear algebra computations in C or C++, particularly those looking for libraries that handle generalized eigenvalue problems.