Accord.NET Framework

## EigenvalueDecompositionF Class |

Determines the eigenvalues and eigenvectors of a real square matrix.

Inheritance Hierarchy

SystemObject

Accord.Math.DecompositionsEigenvalueDecompositionF

Accord.Math.DecompositionsEigenvalueDecompositionF

Syntax

The EigenvalueDecompositionF type exposes the following members.

Constructors

Name | Description | |
---|---|---|

EigenvalueDecompositionF(Single, Boolean, Boolean) |
Construct an eigenvalue decomposition. | |

EigenvalueDecompositionF(Single, Boolean, Boolean, Boolean) |
Construct an eigenvalue decomposition. |

Properties

Name | Description | |
---|---|---|

DiagonalMatrix | Returns the block diagonal eigenvalue matrix. | |

Eigenvectors | Returns the eigenvector matrix. | |

ImaginaryEigenvalues | Returns the imaginary parts of the eigenvalues. | |

Rank |
Returns the effective numerical matrix rank.
| |

RealEigenvalues | Returns the real parts of the eigenvalues. |

Methods

Name | Description | |
---|---|---|

Clone |
Creates a new object that is a copy of the current instance.
| |

Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |

GetHashCode | Serves as the default hash function. (Inherited from Object.) | |

GetType | Gets the Type of the current instance. (Inherited from Object.) | |

Reverse |
Reverses the decomposition, reconstructing the original matrix X.
| |

ToString | Returns a string that represents the current object. (Inherited from Object.) |

Extension Methods

Name | Description | |
---|---|---|

HasMethod |
Checks whether an object implements a method with the given name.
(Defined by ExtensionMethods.) | |

IsEqual |
Compares two objects for equality, performing an elementwise
comparison if the elements are vectors or matrices.
(Defined by Matrix.) | |

To(Type) | Overloaded.
Converts an object into another type, irrespective of whether
the conversion can be done at compile time or not. This can be
used to convert generic types to numeric types during runtime.
(Defined by ExtensionMethods.) | |

ToT | Overloaded.
Converts an object into another type, irrespective of whether
the conversion can be done at compile time or not. This can be
used to convert generic types to numeric types during runtime.
(Defined by ExtensionMethods.) |

Remarks

In the mathematical discipline of linear algebra, eigendecomposition or sometimes spectral decomposition is the factorization of a matrix into a canonical form, whereby the matrix is represented in terms of its eigenvalues and eigenvectors.

If A is symmetric, then A = V * D * V' and A = V * V' where the eigenvalue matrix D is diagonal and the eigenvector matrix V is orthogonal. If A is not symmetric, the eigenvalue matrix D is block diagonal with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The columns of V represent the eigenvectors in the sense that A * V = V * D. The matrix V may be badly conditioned, or even singular, so the validity of the equation A = V * D * inverse(V) depends upon the condition of V.

See Also