How to diagonalize a huge thin symmetrical matrix to get the eigenvalues and also eigenvectors
How does one diagonalize a huge thin symmetrical matrix to get the eigenvalues and also the eigenvectors?
The trouble is the matrix can be large (though it is thin), at the majority of $2500\times 2500$. Exists an excellent algorithm to do that and also most notably, one that I can implement it right into my very own code? Many thanks a whole lot!
$2500 \times 2500$ is a tiny matrix by existing criteria. The typical eig command of matlab need to have the ability to manage this dimension effortlessly. Repetitive thin matrix eigensolvers like those applied in ARPACK, or SLEPc will certainly come to be extra better if the matrix is a lot bigger.
Additionally, if you intend to implement an eigensolver right into your very own code, simply make use of the LAPACK collection that features quite possibly created regimens for such objective. Matlab additionally inevitably conjures up LAPACK regimens for doing a lot of its mathematical linear algebra.
Semi - relevant note : the matrix need not be clearly readily available for the huge thin solvers, due to the fact that they generally simply rely on having the ability to calculate $A*x$ and also $A'*x$.