Eigensystem Misbehavior
- To: mathgroup at yoda.physics.unc.edu
- Subject: Eigensystem Misbehavior
- From: Mark E. Kotanchek <mek at guinan.psu.edu>
- Date: Fri, 8 Oct 93 11:44:17 -0400
Hello, I've happened across some disturbing (and show-stopping) behavior of Mma 2.2 running on my NeXTstation. The problem is that the eigenvector decomposition does not seem to work! The behavior I expect is verified with MATLAB 3.5 running on a Powerbook 170 so unless there is something embarrassingly obvious which I've missed, it would appear that Mma is embarrassingly wrong.... Problems with Mathematica's Eigensystem Function Given a complex-valued Hermitian matrix, we should have orthogonal eigenvectors and real-valued eigenvalues. Here we build a Hermitian matrix and compute its eigendecomposition. In[60]:= matrix = Table[Random[] + I Random[],{3},{3}]; (* non-Hermitian *) R = matrix.Conjugate[Transpose[matrix]]; (* Hermitian *) {lambda,V} = Eigensystem[R]; (* eigendecomposition *) A = DiagonalMatrix[lambda]; (* diagonal matrix of eigenvalues *) Now, due to R being Hermitian (complex-conjuate symmetric), the eigenvectors should be orthogonal. This, is true in Mma as well as in MATLAB: In[68]:= V.Conjugate[Transpose[V]]; Conjugate[Transpose[V]].V // Chop // MatrixForm Out[69]//MatrixForm= 1. 0 0 0 1. 0 0 0 1. However, since the eigenvalues are defined as solving R.V = V.A, this should imply that A = V'.R.V where the apostrophe denotes the Hermitian transpose. (Since V'.V = V.V' = I where I is the identity matrix.) Alas, it would appear that Mathematica has managed to decouple the eigenvalues and eigenvectors since the following operation does not yield a diagonal matrix In[76]:= Conjugate[Transpose[V]].R.V //Chop // MatrixForm Out[76]//MatrixForm= 1.85539 2.32337 - 0.144524 I -0.963508 -0.317202 I 2.32337 + 0.144524 I 3.06844 -1.24019 - 0.626869 I -0.963508 + 0.317202 I -1.24019 + 0.626869 I 0.787197 Now R is clearly Hermitian, In[73]:= R // Chop // MatrixForm Out[73]//MatrixForm= 1.45597 1.46701 - 0.202553 I 1.72782 - 0.074807 I 1.46701 + 0.202553 I 1.72343 2.04424 + 0.0709862 I 1.72782 + 0.074807 I 2.04424 - 0.0709862 I 2.53162 I would be surprised at this late stage if Mathematica couldn't handle a simple task like eigenvector decompositions properly; however, from these results, I would appear I am too optimistic. Any ideas as to what's wrong? I sure hope its me! Mark. --- Mark Kotanchek Guidance & Control Dept - 363 ASB Applied Research Lab/Penn State P.O. Box 30 State College, PA 16804 e-mail: mek at guinan.psu.edu (NeXTmail) TEL: (814)863-0682 FAX: (814)863-7843