Maxima Function
eigenvectors (M)
eivects(M)
takes a matrix M as its argument and returns a list
of lists the first sublist of which is the output of eigenvalues
and the other sublists of which are the eigenvectors of the
matrix corresponding to those eigenvalues respectively.
The calculated eigenvectors and the unit eigenvectors of the matrix are the
right eigenvectors and the right unit eigenvectors respectively.
eivects
is a synonym for eigenvectors
.
The package eigen.mac
is loaded automatically when
eigenvalues
or eigenvectors
is referenced.
If eigen.mac
is not already loaded,
load ("eigen")
loads it.
After loading, all functions and variables in the package are available.
The flags that affect this function are:
nondiagonalizable
is set to true
or false
depending on
whether the matrix is nondiagonalizable or diagonalizable after
eigenvectors
returns.
hermitianmatrix
when true
, causes the degenerate
eigenvectors of the Hermitian matrix to be orthogonalized using the
Gram-Schmidt algorithm.
knowneigvals
when true
causes the eigen
package to assume the
eigenvalues of the matrix are known to the user and stored under the
global name listeigvals
. listeigvals
should be set to a list similar
to the output eigenvalues
.
The function algsys
is used here to solve for the eigenvectors. Sometimes if the
eigenvalues are messy, algsys
may not be able to find a solution.
In some cases, it may be possible to simplify the eigenvalues by
first finding them using eigenvalues
command and then using other functions
to reduce them to something simpler.
Following simplification, eigenvectors
can be called again
with the knowneigvals
flag set to true
.