Re: Find smallest eigenvalues in mathematica

*To*: mathgroup at smc.vnet.net*Subject*: [mg85601] Re: Find smallest eigenvalues in mathematica*From*: Roman <rschmied at gmail.com>*Date*: Thu, 14 Feb 2008 06:49:59 -0500 (EST)*References*: <fp0ljo$5mi$1@smc.vnet.net>

Mathematica has the ARPACK library built in ("Arnoldi" and "Lanczos" are somewhat synonymous), and all (?) the options for that library apply. If your matrix is Hermitian, so that you know that the eigenvalues are all real, then you can use the real part as a criterion for computing the smallest one. Let A be your sparse matrix, containing only machine-precision real numbers. Then calling -Eigenvalues[-A, 1, Method -> {Arnoldi, MaxIterations -> 10^5, Criteria -> RealPart}] will compute the largest eigenvalue of -A (by real part), which is the smallest eigenvalue of A. Unfortunately, the Mathematica documentation on the subject of sparse-matrix diagonalization is very sparse. Roman.