# EigenPackage R¶

This is a package for the exact computation of eigenvalues and eigenvectors. This package works for matrices with coefficients which are rational functions over a ring where we can factor polynomials. Eigenvalues not in base field are represented by their minimal polynomial.

characteristicPolynomial: (Matrix Fraction Polynomial R, Symbol) -> Polynomial R
characteristicPolynomial(m, var) returns the characteristicPolynomial of the matrix m using the symbol var as the main variable.
characteristicPolynomial: Matrix Fraction Polynomial R -> Polynomial R
characteristicPolynomial(m) returns the characteristicPolynomial of the matrix m using a new generated symbol symbol as the main variable.
eigenvalues: Matrix Fraction Polynomial R -> List Union(Fraction Polynomial R, SuchThat(Symbol, Polynomial R)) if R has PolynomialFactorizationExplicit
eigenvalues(m) returns the eigenvalues of the matrix m.
eigenvector: (Union(Fraction Polynomial R, SuchThat(Symbol, Polynomial R)), Matrix Fraction Polynomial R) -> List Matrix Fraction Polynomial R
eigenvector(eigval, m) returns the eigenvectors belonging to the eigenvalue eigval for the matrix m.
eigenvectors: Matrix Fraction Polynomial R -> List Record(eigval: Union(Fraction Polynomial R, SuchThat(Symbol, Polynomial R)), eigmult: NonNegativeInteger, eigvec: List Matrix Fraction Polynomial R) if R has PolynomialFactorizationExplicit
eigenvectors(m) returns the eigenvalues and eigenvectors for the matrix m. The eigenvalues in base field and the corresponding eigenvectors are explicitely computed, while the other ones are given via their minimal polynomial and the corresponding eigenvectors are expressed in terms of a “generic” root of such a polynomial.
generalizedEigenvector: (Record(eigval: Union(Fraction Polynomial R, SuchThat(Symbol, Polynomial R)), eigmult: NonNegativeInteger, eigvec: List Matrix Fraction Polynomial R), Matrix Fraction Polynomial R) -> List Matrix Fraction Polynomial R
generalizedEigenvector(eigen, m) returns the generalized eigenvectors of the matrix relative to the eigenvalue eigen, as returned by the function eigenvectors.
generalizedEigenvector: (Union(Fraction Polynomial R, SuchThat(Symbol, Polynomial R)), Matrix Fraction Polynomial R, NonNegativeInteger, NonNegativeInteger) -> List Matrix Fraction Polynomial R
generalizedEigenvector(alpha, m, k, g) returns the generalized eigenvectors of the matrix relative to the eigenvalue alpha. The integers k and g are respectively the algebraic and the geometric multiplicity of tye eigenvalue alpha.
generalizedEigenvectors: Matrix Fraction Polynomial R -> List Record(eigval: Union(Fraction Polynomial R, SuchThat(Symbol, Polynomial R)), geneigvec: List Matrix Fraction Polynomial R) if R has PolynomialFactorizationExplicit
generalizedEigenvectors(m) returns the generalized returns the generalized eigenvectors of the matrix m.