Boost logo

Boost :

Subject: [boost] [GSOC2015] uBLAS Matrix Solver Project
From: Rajaditya Mukherjee (rajaditya.mukherjee_at_[hidden])
Date: 2015-03-05 22:50:25


Hi,

My name is Raj and I am Phd student in Computer Graphics. I am interested
in tackling the problem of uBLAS Matrix Solver and in order to write my
proposal, I am looking for inputs for which of the following algorithms
will be most useful for prospective users in boost-numeric library. Here is
a categorical list of all the prospective ones which will bring uBLAS
updated to other commercial libraries like Eigen/Armadillo. Please let me
know your preferences....

*David Bellot* : As a potential mentor, do you have any specific additions
or deletions for this list? This could also be useful for other candidates
pursuing this project.

*DENSE SOLVERS AND DECOMPOSITION* :
1) *QR Decomposition* - *(Must have)* For orthogonalization of column
spaces and solutions to linear systems. (Bonus : Also rank revealing..)
2) *Cholesky Decomposition* - *(Must have)* For symmetric Positive Definite
systems often encountered in PDE for FEM Systems...
3) *Householder Method* - Conversion to tridiagonal form for eigen solvers.

*SPARSE SOLVERS AND PRECONDITIONERS* :
1) *Conjugate Gradient* - *(Must have)* For symmetric Positive Definite
systems, this is the kryvlov space method of choice. Both general and
preconditioned variants need to be implemented for convergence issues. 2)
*BiCGSTAB* *(Needs introspection)* - For non symmetric systems..
3) *Incomplete Cholesky Decomposition* *(Good to have)* - For symmetric
Positive definite sparse matrices, to be used as preconditioner as
extension to (1) for preconditioned CG Methods ...
4) *Jacobi Preconditioner* *(Must have)* - As prerequisite for step(1).

*EIGEN DECOMPOSITION MODULES (ONLY FOR DENSE MODULES)**:*
1) *Symmetric Eigen Values* - *(Must have)* Like SSYEV Module in Lapack -
That is first reduction to a tridiagonal form using Householder then using
QR Algorithm for Eigen Value computation.
2) *NonSymmetric Eigen Values* - *(Good to have)* Like SGEEV module in
Lapack - using Schur decompositions as an intermediate step in the above
algorithm.
3) *Generalized Eigen Values* - *(needs introspection)* I use this in my
research a lot and its a good thing to have..

** Computing Eigen Decomposition of sparse modules needs special robust
numerical treatment using implicitly restarted arnoldi iterations and may
be treated as optional extensions.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk