Eigensystem

Eigensystem[m]
gives a list of the eigenvalues and eigenvectors of the square matrix m.

Eigensystem[{m,a}]
gives the generalized eigenvalues and eigenvectors of m with respect to a.

Eigensystem[m,k]
gives the eigenvalues and eigenvectors for the first k eigenvalues of m.

Eigensystem[{m,a},k]
gives the first k generalized eigenvalues and eigenvectors.

Details and OptionsDetails and Options

  • Eigensystem finds numerical eigenvalues and eigenvectors if m contains approximate real or complex numbers.
  • For approximate numerical matrices m, the eigenvectors are normalized.
  • For exact or symbolic matrices m, the eigenvectors are not normalized.
  • All the nonzero eigenvectors given are independent. If the number of eigenvectors is equal to the number of nonzero eigenvalues, then corresponding eigenvalues and eigenvectors are given in corresponding positions in their respective lists.
  • If there are more eigenvalues than independent eigenvectors, then each extra eigenvalue is paired with a vector of zeros. »
  • The eigenvalues and eigenvectors satisfy the matrix equation m.Transpose[vectors]==Transpose[vectors].DiagonalMatrix[values]. »
  • The generalized finite eigenvalues and eigenvectors satisfy m.Transpose[vectors]==a.Transpose[vectors].DiagonalMatrix[values].
  • can be used to set vals and vecs to be the eigenvalues and eigenvectors respectively. »
  • Eigensystem[m,spec] is equivalent to applying Take[,spec] to each element of Eigensystem[m].
  • SparseArray objects can be used in Eigensystem. »
  • Eigensystem has the following options and settings:
  • CubicsFalsewhether to use radicals to solve cubics
    MethodAutomaticselect a method to use
    QuarticsFalsewhether to use radicals to solve quartics
    ZeroTestAutomatictest for when expressions are zero
  • The ZeroTest option only applies to exact and symbolic matrices.
  • Explicit Method settings for approximate numeric matrices include:
  • "Arnoldi"Arnoldi iterative method for finding a few eigenvalues
    "Banded"direct banded matrix solver
    "Direct"direct method for finding all eigenvalues
    "FEAST"FEAST iterative method for finding eigenvalues in an interval (applies to Hermitian matrices only)
  • The method is also known as a Lanczos method when applied to symmetric or Hermitian matrices.
  • The and methods take suboptions Method->{"name",opt1->val1,}, which can be found in the Method subsection.

ExamplesExamplesopen allclose all

Basic Examples  (4)Basic Examples  (4)

Eigenvalues and eigenvectors computed with machine precision:

In[1]:=
Click for copyable input
Out[1]=

Eigenvalues and eigenvectors computed with 20-digit arbitrary precision:

In[1]:=
Click for copyable input
Out[1]=

Exact eigenvalues and eigenvectors:

In[1]:=
Click for copyable input
Out[1]=

Symbolic eigenvalues and eigenvectors:

In[1]:=
Click for copyable input
Out[1]=
Introduced in 1988
(1.0)
| Updated in 2014
(10.0)