Macaulay2 » Documentation
Packages » Macaulay2Doc :: eigenvectors
next | previous | forward | backward | up | index | toc

eigenvectors -- find eigenvectors of a matrix over RR or CC

Synopsis

Description

The resulting matrix is over CC, and contains the eigenvectors of M. The lapack and eigen libraries are used to compute eigenvectors of real and complex matrices.

Recall that if v is a non-zero vector such that Mv = av, for a scalar a, then v is called an eigenvector corresponding to the eigenvalue a.
i1 : M = matrix{{1, 2}, {5, 7}}

o1 = | 1 2 |
     | 5 7 |

              2       2
o1 : Matrix ZZ  <-- ZZ
i2 : eigenvectors M

o2 = ({-.358899}, | -.827138 -.262266 |)
      {8.3589  }  | .561999  -.964996 |

o2 : Sequence
If the matrix is symmetric (over RR) or Hermitian (over CC), this information should be provided as an optional argument Hermitian=>true. In this case, the resulting eigenvalues will be returned as real numbers, and if M is real, the matrix of eigenvectors will be real.
i3 : M = matrix {{1, 2}, {2, 1}}

o3 = | 1 2 |
     | 2 1 |

              2       2
o3 : Matrix ZZ  <-- ZZ
i4 : (e,v) = eigenvectors(M, Hermitian=>true)

o4 = ({-1}, | -.707107 .707107 |)
      {3 }  | .707107  .707107 |

o4 : Sequence
i5 : class \ e

o5 = {RR}
     {RR}

o5 : VerticalList
i6 : v

o6 = | -.707107 .707107 |
     | .707107  .707107 |

                2         2
o6 : Matrix RR    <-- RR
              53        53

Caveat

The eigenvectors are approximate.

See also

Ways to use eigenvectors :

For the programmer

The object eigenvectors is a method function with options.