Classes | |
class | CholeskyDecomposition |
Cholesky Decomposition. For a symmetric, positive definite matrix A, the Cholesky decomposition is an lower triangular matrix L so that A = L*L'. If the matrix is not symmetric or positive definite, the constructor returns a partial decomposition and sets an internal flag that may be queried by the isSPD() method. More... | |
class | EigenvalueDecomposition |
Eigenvalues and eigenvectors of a real matrix. If A is symmetric, then A = V*D*V' where the eigenvalue matrix D is diagonal and the eigenvector matrix V is orthogonal. I.e. A = V.Multiply(D.Multiply(V.Transpose())) and V.Multiply(V.Transpose()) equals the identity matrix. If A is not symmetric, then 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, i.e. A.Multiply(V) equals V.Multiply(D). The matrix V may be badly conditioned, or even singular, so the validity of the equation A = V*D*Inverse(V) depends upon V.cond(). More... | |
class | GeneralMatrix |
.NET GeneralMatrix class. More... | |
class | LUDecomposition |
LU Decomposition. For an m-by-n matrix A with m >= n, the LU decomposition is an m-by-n unit lower triangular matrix L, an n-by-n upper triangular matrix U, and a permutation vector piv of length m so that A(piv,:) = L*U. If m < n, then L is m-by-m and U is m-by-n. </code> The LU decompostion with pivoting always exists, even if the matrix is singular, so the constructor will never fail. The primary use of the LU decomposition is in the solution of square systems of simultaneous linear equations. This will fail if IsNonSingular() returns false. | |
class | QRDecomposition |
QR Decomposition. For an m-by-n matrix A with m >= n, the QR decomposition is an m-by-n orthogonal matrix Q and an n-by-n upper triangular matrix R so that A = Q*R. More... | |
class | SingularValueDecomposition |
Singular Value Decomposition. More... |
This namespace contains code that stores and manipulates matrices, and is used in the Markov routines. This code was written and made available under public domain by Paul Selormey at http://www.thecodeproject.com/csharp/psdotnetmatrix.asp.