I have to following linear system to solve : $Ax=e_1$ where $A$ is a sparse tridiagonal matrix with the main diagonal terms $a_{ii}$ being all different, and the off-diagonal terms being each others complex conjugate ($\bar{b_{ij}} = b_{ji}$). $e_1$ is the unit vector $(1, 0, 0, ..., 0)$. How would you proceed to do this efficiently, knowing that my matrices and vectors contain million of elements? I'd be firstly interested in the mathematical way to do it, so I can find some inspiration to implement it myself. And secondly (if it is the right site to ask this), if you know of any implementation in FORTRAN for this kind of problem? Googling it brings me to packages such as LAPACK
, but it is stated explicitly it is not optimized for general sparse matrices. And seeing the number of elements, an $O(n)$ method would be highly appreciated.
Tridiagonal sparse matrix - linear equation
1
$\begingroup$
numerical-linear-algebra
-
0It is true that you $c$an express the entries of the inverse of a tridiagonal matrix as CFs... but anyway, you'd want to verify first that your matrix is positive definite or diagonally dominant at the very least. Where did your tridiagonals come from? – 2011-04-19