In linear algebra, **eigendecomposition** is the factorization of a matrix into a canonical form, whereby the matrix is represented in terms of its eigenvalues and eigenvectors. Only diagonalizable matrices can be factorized in this way. When the matrix being factorized is a normal or real symmetric matrix, the decomposition is called "spectral decomposition", derived from the spectral theorem.

Main article: Eigenvalue, eigenvector and eigenspace |

A (nonzero) vector **v** of dimension N is an eigenvector of a square *N* × *N* matrix **A** if it satisfies a linear equation of the form

for some scalar λ. Then λ is called the eigenvalue corresponding to **v**. Geometrically speaking, the eigenvectors of **A** are the vectors that **A** merely elongates or shrinks, and the amount that they elongate/shrink by is the eigenvalue. The above equation is called the eigenvalue equation or the eigenvalue problem.

This yields an equation for the eigenvalues

We call *p*(*λ*) the characteristic polynomial, and the equation, called the characteristic equation, is an Nth order polynomial equation in the unknown λ. This equation will have N_{λ} distinct solutions, where 1 ≤ *N _{λ}* ≤

If the field of scalars is algebraically closed, then we can factor p as

The integer n_{i} is termed the algebraic multiplicity of eigenvalue λ_{i}. The algebraic multiplicities sum to N:

For each eigenvalue λ_{i}, we have a specific eigenvalue equation

There will be 1 ≤ *m*_{i} ≤ *n*_{i} linearly independent solutions to each eigenvalue equation. The linear combinations of the *m*_{i} solutions (except the one which gives the zero vector) are the eigenvectors associated with the eigenvalue *λ*_{i}. The integer *m*_{i} is termed the geometric multiplicity of *λ*_{i}. It is important to keep in mind that the algebraic multiplicity *n*_{i} and geometric multiplicity *m*_{i} may or may not be equal, but we always have *m*_{i} ≤ *n*_{i}. The simplest case is of course when *m*_{i} = *n*_{i} = 1. The total number of linearly independent eigenvectors, *N*_{v}, can be calculated by summing the geometric multiplicities

The eigenvectors can be indexed by eigenvalues, using a double index, with **v**_{ij} being the jth eigenvector for the ith eigenvalue. The eigenvectors can also be indexed using the simpler notation of a single index **v**_{k}, with *k* = 1, 2, ..., *N*_{v}.

Let **A** be a square *n* × *n* matrix with n linearly independent eigenvectors q_{i} (where *i* = 1, ..., *n*). Then **A** can be factorized as

where **Q** is the square *n* × *n* matrix whose ith column is the eigenvector q_{i} of **A**, and **Λ** is the diagonal matrix whose diagonal elements are the corresponding eigenvalues, *Λ _{ii}* =

The n eigenvectors q_{i} are usually normalized, but they need not be. A non-normalized set of n eigenvectors, v_{i} can also be used as the columns of **Q**. That can be understood by noting that the magnitude of the eigenvectors in **Q** gets canceled in the decomposition by the presence of **Q**^{−1}. If one of the eigenvalues *λ _{i}* has more than one linearly independent eigenvectors (that is, the geometric multiplicity of

The decomposition can be derived from the fundamental property of eigenvectors:

The linearly independent eigenvectors q_{i} with nonzero eigenvalues form a basis (not necessarily orthonormal) for all possible products *A***x**, for **x** ∈ **C**^{n}, which is the same as the image (or range) of the corresponding matrix transformation, and also the column space of the matrix **A**. The number of linearly independent eigenvectors q_{i} with nonzero eigenvalues is equal to the rank of the matrix **A**, and also the dimension of the image (or range) of the corresponding matrix transformation, as well as its column space.

The linearly independent eigenvectors q_{i} with an eigenvalue of zero form a basis (which can be chosen to be orthonormal) for the null space (also known as the kernel) of the matrix transformation **A**.

The 2 × 2 real matrix **A**

may be decomposed into a diagonal matrix through multiplication of a non-singular matrix **B**

Then

for some real diagonal matrix .

Multiplying both sides of the equation on the left by **B**:

The above equation can be decomposed into two simultaneous equations:

Factoring out the eigenvalues x and y:

Letting

this gives us two vector equations:

And can be represented by a single vector equation involving two solutions as eigenvalues:

where λ represents the two eigenvalues x and y, and **u** represents the vectors **a** and **b**.

Shifting *λ***u** to the left hand side and factoring **u** out

Since **B** is non-singular, it is essential that **u** is nonzero. Therefore,

Thus

giving us the solutions of the eigenvalues for the matrix **A** as *λ* = 1 or *λ* = 3, and the resulting diagonal matrix from the eigendecomposition of **A** is thus .

Putting the solutions back into the above simultaneous equations

Solving the equations, we have

Thus the matrix **B** required for the eigendecomposition of **A** is

that is:

Main article: Inverse matrix |

If a matrix **A** can be eigendecomposed and if none of its eigenvalues are zero, then **A** is invertible and its inverse is given by

If is a symmetric matrix, since is formed from the eigenvectors of , is guaranteed to be an orthogonal matrix, therefore . Furthermore, because **Λ** is a diagonal matrix, its inverse is easy to calculate:

When eigendecomposition is used on a matrix of measured, real data, the inverse may be less valid when all eigenvalues are used unmodified in the form above. This is because as eigenvalues become relatively small, their contribution to the inversion is large. Those near zero or at the "noise" of the measurement system will have undue influence and could hamper solutions (detection) using the inverse.^{[4]}

Two mitigations have been proposed: truncating small or zero eigenvalues, and extending the lowest reliable eigenvalue to those below it. See also Tikhonov regularization as a statistically motivated but biased method for rolling off eigenvalues as they become dominated by noise.

The first mitigation method is similar to a sparse sample of the original matrix, removing components that are not considered valuable. However, if the solution or detection process is near the noise level, truncating may remove components that influence the desired solution.

The second mitigation extends the eigenvalue so that lower values have much less influence over inversion, but do still contribute, such that solutions near the noise will still be found.

The reliable eigenvalue can be found by assuming that eigenvalues of extremely similar and low value are a good representation of measurement noise (which is assumed low for most systems).

If the eigenvalues are rank-sorted by value, then the reliable eigenvalue can be found by minimization of the Laplacian of the sorted eigenvalues:^{[5]}

where the eigenvalues are subscripted with an s to denote being sorted. The position of the minimization is the lowest reliable eigenvalue. In measurement systems, the square root of this reliable eigenvalue is the average noise over the components of the system.

The eigendecomposition allows for much easier computation of power series of matrices. If *f* (*x*) is given by

then we know that

Because **Λ** is a diagonal matrix, functions of **Λ** are very easy to calculate:

The off-diagonal elements of *f* (**Λ**) are zero; that is, *f* (**Λ**) is also a diagonal matrix. Therefore, calculating *f* (**A**) reduces to just calculating the function on each of the eigenvalues.

A similar technique works more generally with the holomorphic functional calculus, using

from above. Once again, we find that

which are examples for the functions . Furthermore, is the matrix exponential.

Main article: Spectral theorem |

This section needs expansion. You can help by adding to it. (June 2008)

When **A** is normal or real symmetric matrix, the decomposition is called "spectral decomposition", derived from the spectral theorem.

A complex-valued square matrix **A** is normal (meaning **A**^{*}**A** = **AA**^{*}, where **A**^{*} is the conjugate transpose) if and only if it can be decomposed as

where **U** is a unitary matrix (meaning **U**^{*} = **U**^{−1}) and **Λ** = diag(*λ*_{1}, ..., *λ*_{n}) is a diagonal matrix.^{[6]} The columns **u**_{1}, ..., **u**_{n} of **U** form an orthonormal basis and are eigenvectors of **A** with corresponding eigenvalues *λ*_{1}, ..., *λ*_{n}.

If **A** is restricted to be a Hermitian matrix (**A** = **A***), then **Λ** has only real valued entries. If **A** is restricted to a unitary matrix, then **Λ** takes all its values on the complex unit circle, that is, |*λ _{i}*| = 1.

As a special case, for every *n* × *n* real symmetric matrix, the eigenvalues are real and the eigenvectors can be chosen real and orthonormal. Thus a real symmetric matrix **A** can be decomposed as

where **Q** is an orthogonal matrix whose columns are the real, orthonormal eigenvectors of **A**, and **Λ** is a diagonal matrix whose entries are the eigenvalues of **A**.^{[7]}

- The product of the eigenvalues is equal to the determinant of
**A**Note that each eigenvalue is raised to the power*n*, the algebraic multiplicity._{i} - The sum of the eigenvalues is equal to the trace of
**A**Note that each eigenvalue is multiplied by*n*, the algebraic multiplicity._{i} - If the eigenvalues of
**A**are*λ*_{i}, and**A**is invertible, then the eigenvalues of**A**^{−1}are simply*λ*^{−1}_{i}. - If the eigenvalues of
**A**are*λ*_{i}, then the eigenvalues of*f*(**A**) are simply*f*(*λ*_{i}), for any holomorphic function f.

- If
**A**is Hermitian and full-rank, the basis of eigenvectors may be chosen to be mutually orthogonal. The eigenvalues are real. - The eigenvectors of
**A**^{−1}are the same as the eigenvectors of**A**. - Eigenvectors are only defined up to a multiplicative constant. That is, if
**Av**=*λ***v**then*c***v**is also an eigenvector for any scalar*c*≠ 0. In particular, −**v**and*e*^{iθ}**v**(for any*θ*) are also eigenvectors. - In the case of degenerate eigenvalues (an eigenvalue having more than one eigenvector), the eigenvectors have an additional freedom of linear transformation, that is to say, any linear (orthonormal) combination of eigenvectors sharing an eigenvalue (in the degenerate subspace) is itself an eigenvector (in the subspace).

**A**can be eigendecomposed if and only if the number of linearly independent eigenvectors,*N*_{v}, equals the dimension of an eigenvector:*N*_{v}=*N*- If the field of scalars is algebraically closed and if
*p*(*λ*) has no repeated roots, that is, if then**A**can be eigendecomposed. - The statement "
**A**can be eigendecomposed" does*not*imply that**A**has an inverse as some eigenvalues may be zero, which is not invertible. - The statement "
**A**has an inverse" does*not*imply that**A**can be eigendecomposed. A counterexample is , which is an invertible defective matrix.

**A**can be inverted if and only if all eigenvalues are nonzero:- If
*λ*≠ 0_{i}*and**N*_{v}=*N*, the inverse is given by

Further information: eigenvalue algorithm |

Suppose that we want to compute the eigenvalues of a given matrix. If the matrix is small, we can compute them symbolically using the characteristic polynomial. However, this is often impossible for larger matrices, in which case we must use a numerical method.

In practice, eigenvalues of large matrices are not computed using the characteristic polynomial. Computing the polynomial becomes expensive in itself, and exact (symbolic) roots of a high-degree polynomial can be difficult to compute and express: the Abel–Ruffini theorem implies that the roots of high-degree (5 or above) polynomials cannot in general be expressed simply using nth roots. Therefore, general algorithms to find eigenvectors and eigenvalues are iterative.

Iterative numerical algorithms for approximating roots of polynomials exist, such as Newton's method, but in general it is impractical to compute the characteristic polynomial and then apply these methods. One reason is that small round-off errors in the coefficients of the characteristic polynomial can lead to large errors in the eigenvalues and eigenvectors: the roots are an extremely ill-conditioned function of the coefficients.^{[8]}

A simple and accurate iterative method is the power method: a random vector **v** is chosen and a sequence of unit vectors is computed as

This sequence will almost always converge to an eigenvector corresponding to the eigenvalue of greatest magnitude, provided that **v** has a nonzero component of this eigenvector in the eigenvector basis (and also provided that there is only one eigenvalue of greatest magnitude). This simple algorithm is useful in some practical applications; for example, Google uses it to calculate the page rank of documents in their search engine.^{[9]} Also, the power method is the starting point for many more sophisticated algorithms. For instance, by keeping not just the last vector in the sequence, but instead looking at the span of *all* the vectors in the sequence, one can get a better (faster converging) approximation for the eigenvector, and this idea is the basis of Arnoldi iteration.^{[8]} Alternatively, the important QR algorithm is also based on a subtle transformation of a power method.^{[8]}

Once the eigenvalues are computed, the eigenvectors could be calculated by solving the equation

using Gaussian elimination or any other method for solving matrix equations.

However, in practical large-scale eigenvalue methods, the eigenvectors are usually computed in other ways, as a byproduct of the eigenvalue computation. In power iteration, for example, the eigenvector is actually computed before the eigenvalue (which is typically computed by the Rayleigh quotient of the eigenvector).^{[8]} In the QR algorithm for a Hermitian matrix (or any normal matrix), the orthonormal eigenvectors are obtained as a product of the **Q** matrices from the steps in the algorithm.^{[8]} (For more general matrices, the QR algorithm yields the Schur decomposition first, from which the eigenvectors can be obtained by a backsubstitution procedure.^{[10]}) For Hermitian matrices, the Divide-and-conquer eigenvalue algorithm is more efficient than the QR algorithm if both eigenvectors and eigenvalues are desired.^{[8]}

Recall that the *geometric* multiplicity of an eigenvalue can be described as the dimension of the associated eigenspace, the nullspace of *λ***I** − **A**. The algebraic multiplicity can also be thought of as a dimension: it is the dimension of the associated **generalized eigenspace** (1st sense), which is the nullspace of the matrix (*λ***I** − **A**)^{k} for *any sufficiently large k*. That is, it is the space of *generalized eigenvectors* (first sense), where a generalized eigenvector is any vector which *eventually* becomes 0 if *λ***I** − **A** is applied to it enough times successively. Any eigenvector is a generalized eigenvector, and so each eigenspace is contained in the associated generalized eigenspace. This provides an easy proof that the geometric multiplicity is always less than or equal to the algebraic multiplicity.

This usage should not be confused with the *generalized eigenvalue problem* described below.

A **conjugate eigenvector** or **coneigenvector** is a vector sent after transformation to a scalar multiple of its conjugate, where the scalar is called the **conjugate eigenvalue** or **coneigenvalue** of the linear transformation. The coneigenvectors and coneigenvalues represent essentially the same information and meaning as the regular eigenvectors and eigenvalues, but arise when an alternative coordinate system is used. The corresponding equation is

For example, in coherent electromagnetic scattering theory, the linear transformation **A** represents the action performed by the scattering object, and the eigenvectors represent polarization states of the electromagnetic wave. In optics, the coordinate system is defined from the wave's viewpoint, known as the Forward Scattering Alignment (FSA), and gives rise to a regular eigenvalue equation, whereas in radar, the coordinate system is defined from the radar's viewpoint, known as the Back Scattering Alignment (BSA), and gives rise to a coneigenvalue equation.

A **generalized eigenvalue problem** (second sense) is the problem of finding a (nonzero) vector **v** that obeys

where **A** and **B** are matrices. If **v** obeys this equation, with some λ, then we call **v** the *generalized eigenvector* of **A** and **B** (in the second sense), and λ is called the *generalized eigenvalue* of **A** and **B** (in the second sense) which corresponds to the generalized eigenvector **v**. The possible values of λ must obey the following equation

If *n* linearly independent vectors {**v**_{1}, …, **v**_{n}} can be found, such that for every *i* ∈ {1, …, *n*}, **Av**_{i} = *λ _{i}*

Then the following equality holds

And the proof is

And since **P** is invertible, we multiply the equation from the right by its inverse, finishing the proof.

The set of matrices of the form **A** − *λ***B**, where λ is a complex number, is called a *pencil*; the term *matrix pencil* can also refer to the pair (**A**, **B**) of matrices.^{[11]}

If **B** is invertible, then the original problem can be written in the form

which is a standard eigenvalue problem. However, in most situations it is preferable not to perform the inversion, but rather to solve the generalized eigenvalue problem as stated originally. This is especially important if **A** and **B** are Hermitian matrices, since in this case **B**^{−1}**A** is not generally Hermitian and important properties of the solution are no longer apparent.

If **A** and **B** are both symmetric or Hermitian, and **B** is also a positive-definite matrix, the eigenvalues *λ _{i}* are real and eigenvectors

- or ,

and there exists a basis of generalized eigenvectors (it is not a defective problem).^{[11]} This case is sometimes called a *Hermitian definite pencil* or *definite pencil*.^{[11]}