linalg::eigenvalues

Eigenvalues of a matrix

Use only in the MuPAD Notebook Interface.

This functionality does not run in MATLAB.

Syntax

```linalg::eigenvalues(`A`, <Multiple>)
```

Description

`linalg::eigenvalues(A)` returns a list of the eigenvalues of the matrix A.

A floating-point approximation of the eigenvalues is computed with `numeric::eigenvalues`, if the matrix `A` is defined over the component ring `Dom::Float` (see Example 1). In this case it is recommended to call `numeric::eigenvalues` directly for a better efficiency.

The eigenvalues are obtained by computing the zeros of the characteristic polynomial of `A`. The solver `solve` must be able to compute the roots of the characteristic polynomial over the component ring of `A`.

Examples

Example 1

We compute the eigenvalues of the matrix

:

```A := matrix([[1, 4, 2], [1, 4, 2], [2, 5, 3]]): linalg::eigenvalues(A)```

If we consider the matrix over the domain `Dom::Float`, then the call of `linalg::eigenvalues(A)` results in a numerical computation of the eigenvalues of `A` via `numeric::eigenvalues`:

```B := Dom::Matrix(Dom::Float)(A): linalg::eigenvalues(B)```

Example 2

With the option `Multiple` we get the information about the algebraic multiplicity of each eigenvalue:

`C := Dom::Matrix(Dom::Rational)(4, 4, [[-3], [0, 6]])`

`linalg::eigenvalues(C, Multiple)`

Parameters

 `A` A square matrix of a domain of category `Cat::Matrix`

Options

 `Multiple` Returns a list of sublists, where each sublist contains an eigenvalue of `A` and its algebraic multiplicity. Note that due to rounding errors, this may lead to wrong results in cases where multiple eigenvalues exist and `numeric::eigenvalues` is used.

Return Values

Set of the eigenvalues of `A`, or a list of inner lists when the option `Multiple` is given (see below).