Behavior of Eigenvalues and Eigensystem
- To: mathgroup at smc.vnet.net
- Subject: [mg115072] Behavior of Eigenvalues and Eigensystem
- From: "Eric Michielssen" <emichiel at eecs.umich.edu>
- Date: Thu, 30 Dec 2010 04:11:10 -0500 (EST)
Hi, I am running into some trouble using Eigenvalues and Eigensystem. I run Eigensystem[mat1,mat2,3, Method -> Arnoldi] where mat1 and mat2 are both sparse, Hermitian, positive definite matrices. Mathematica confirms this: when I run HermitianMatrixQ[mat1] or PositiveDefiniteMatrixQ[mat1] both return True, same for mat2. I also explicitly compute these matrices' eigenvalues, and they all are positive. Yet, when I run the Eigensystem command then one of two things happens: 1. Mathematica complains that the matrices are not Hermitian. OK, they sometimes are ever so slightly non Hermitian, say by having an imaginary component 10^(-21) on the main diagonal. I can eliminate that by Chopping/symmetrizing, but that comes at the cost of additional memory, and mat1 and mat2 can be huge. 2. Even when I do so, Mathematica complains that the second matrix is not positive definite: Eigensystem::chnpdef: The second matrix SparseArray[Automatic,{4,4},0.\[VeryThinSpace]+0. I,{1,{{0,3,6,9,12},{{1},{2},{3},{1},{2},{4},{1},{3},{4},{2},{3},{4}}},{4.333 33\[VeryThinSpace]+0. I,-0.666667+0. I,-2.81637+0.719138 I,-0.666667+0. I,4.33333\[VeryThinSpace]+0. I,-2.81637+0.719138 I,-2.81637-0.719138 I,4.33333\[VeryThinSpace]+0. I,-0.666667+0. I,-2.81637-0.719138 I,-0.666667+0. I,4.33333\[VeryThinSpace]+0. I}}] in the first argument seems not to be positive definite, which is required for the Arnoldi method. >> Stuck... Note: I use Method -> Arnoldi as Mathematica suggests I do so as my matrices are highly sparse, and huge. I cannot find any documentation on Method -> Arnoldi, though. Are there other dials that can be set when using this option? Are there other options available for Eigenvalues/system? Thanks, Eric Michielssen