
Ublas : 
Subject: [ublas] Fwd: [GSOC2015] uBLAS Matrix Solver Project
From: Rajaditya Mukherjee (rajaditya.mukherjee_at_[hidden])
Date: 20150306 10:30:32
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 boostnumeric 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.