RE: [eigen] Conjugate gradient |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
Hi Gael,
I shortly looked at your implementation of the CG algorithm. It's a very nice work, I don't think that the API is cumbersome.
* What do you think about adding the "optimization" suggested in "Rodriguez-Navarro, Susin - Non structured meshes for Cloth GPU simulation using FEM"?
Basically, what they do is to regroup the computations such that all dot-products happen in one place at the costs of doing 2 more of them. This would speed up parallel implementations (OpenMP) of the vector part.
* For some problems it is possible to evaluate the matrix vector product directly, without the need to resort to a generic matrix, as long as the used function has the same properties as the matrix.
What do you think about adding the possibility to replace the matrix vector product with a custom expression?
Best,
Basil
-----Original Message-----
From: Listengine [mailto:listengine@xxxxxxxxxxxxxxxxx] On Behalf Of Gael Guennebaud
Sent: Dienstag, 26. Juli 2011 10:37
To: eigen
Subject: [eigen] Conjugate gradient
Hi,
finally I've committed a conjugate gradient solver in Eigen. Currently it is in unsupported/Eigen/src/IterativesSolvers/
Its design may sound a bit cumbersome at a first glance but I designed it this way to be compatible with the other decomposition based solvers.
Have a look at its documentation for typical usage examples., and discover the proposed API.
Any suggestions regarding any aspects (API or implementation) are very welcome.
I also have at hand a BiCGSTAB, a block diagonal preconditioner and an incomplete LLT that needs some polishing....
cheers,
Gael