Re: [eigen] Divide & conquer SVD algorithm |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
Dear Imène, Bediss, and Tristan,
thank you for helping to improve Eigen!
On 27.05.2014 17:03, Tristan Sahel wrote:
Thank you for the quick and developped answers. We discussed our
options and decided to start with functionality C and continue with
B.
Le 27/05/2014 11:51, Gael Guennebaud a écrit :
You're very welcome to contribute to Eigen.
On Tue, May 27, 2014 at 11:23 AM, Jitse Niesen
<jitseniesen@xxxxxxxxx <mailto:jitseniesen@xxxxxxxxx>> wrote:
On Tue, 27 May 2014, Tristan Sahel wrote:
[...]
B - Implement eigenvalue decompositions for sparse matrices. A
must to have for a library called Eigen ;), and really useful!
This will become the main part of our project. We want to use a
block Lanczos algorithm (we have barely researched the subject at
this point but it seems to be a good solution to tackle the sparse
matrices problem).
C - Implement new eigenvalue decompositions for dense matrices
allowing to compute only a subset of the eigenvalues/vectors.
Useful for large eigenvalue problems. This requires completely
different algorithms than the one we currently have which can only
compute all eigenvalues.
We intend to do this first, as a way to get used to the library. We
want to use the power iteration method to find the eigenpair with
the largest eigenvalue.
Thank you for your help, Imène, Bediss and Tristan.
Besides the already mentioned publications by Y. Saad you should not
miss the book "Templates for the Solution of Algebraic Eigenvalue
Problems:A Practical Guide" available at
<http://web.eecs.utk.edu/~dongarra/etemplates/index.html>.
May I also hint you to an overview of current implementations of
eigenvalue problem solvers for sparse matrices named "A Survey of
Software for Sparse Eigenvalue Problems" by the SLEPc project (extension
of the parallel software library PETSc by eigenvalue solvers;
<http://www.grycap.upv.es/slepc/documentation/manual.htm>). There are
also some other technical reports on that web page which are probably of
interest for you.
Concerning task B, I would like to suggest to implement a method of
Jacobi-Davidson type, which are among the most efficient
algorithms for calculating eigenvalues nowadays. For an introduction,
you can have a look at the Jacobi-Davidson Gateway project at
<http://www.win.tue.nl/casa/research/scientificcomputing/topics/jd/index.html>
and the references listed in the bibliography there.
Moreover, with that kind of technology you could also tackle tasks B and
C at once.
--
Best wishes!
Kolja