Computation of Eigenvalues and Eigenvectors

In this section we show you some of Axiom's facilities for computing and manipulating eigenvalues and eigenvectors, also called characteristic values and characteristic vectors, respectively. Let's first create a matrix with integer entries. To get a list of the rational eigenvalues, use the operation eigenvalues. Given an explicit eigenvalue, eigenvector computes the eigenvectors corresponding to it. The operation eigenvectors returns a list of pairs of values and vectors. When an eigenvalue is rational, Axiom gives you the value explicitly; otherwise, its minimal polynomial is given, (the polynomial of lowest degree with the eigenvalues as roots), together with a parametric representation of the eigenvector using the eigenvalue. This means that if you ask Axiom to solve the minimal polynomial, then you can substitute these roots into the parametric form of the corresponding eigenvectors. You must be aware that unless an exact eigenvalue has been computed, the eigenvector may be badly in error. Another possibility is to use the operation radicalEigenvectors tries to compute explicitly the eignevectors in terms of radicals. Alternatively, Axiom can compute real or complex approximations to the eigenvectors and eigenvalues using the operations realEigenvectors or complexEigenvectors. They each take an additional argument epsilon to specify the "precision" required. In the real case, this means that each approximation will be within plus or minus epsilon of the actual result. In the complex case, this means that each approximation will be within plus or minus epsilon of the actual result in each of the real and imaginary parts. The precision can be specified as a Float if the results are desired in floating-point notation, or as Fraction Integer if the results are to be expressed using rational (or complex rational) numbers. If an n by n matrix has n distinct eigenvalues (and therefore n eigenvectors) the operation eigenMatrix gives you a matrix of the eigenvectors. If a symmetric matrix has a basis of orthonormal eigenvectors, then orthonormalBasis computes a list of these vectors.