Difference between revisions of "Decompose"
m (adding doc status category) |
|||
(7 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
[[category:Matrix Functions]] | [[category:Matrix Functions]] | ||
+ | [[Category:Functions that operate on complex numbers]] | ||
[[Category:Doc Status C]] <!-- For Lumina use, do not change --> | [[Category:Doc Status C]] <!-- For Lumina use, do not change --> | ||
− | + | ==Decompose(C, I, J)== | |
− | Returns the Cholesky decomposition (square root) matrix of | + | Returns the Cholesky decomposition (square root) matrix of matrix «C» along dimensions «I» and «J». Matrix «C» must be symmetric |
− | matrix | + | and positive-definite. (Positive-definite means that ''v*C*v > 0'', for all vectors ''v''.) |
− | and positive-definite. (Positive-definite means that v * C * v > 0, | ||
− | for all vectors v.) | ||
− | Cholesky decomposition computes a lower diagonal matrix L | + | Cholesky decomposition computes a lower diagonal matrix ''L'' such that ''L*L' = C'', where ''L''' is the transpose of ''L''. |
− | such that L * L' = C, where L' is the transpose of L. | + | |
+ | == Testing for positive definiteness == | ||
+ | To avoid an error, the following [[User-Defined Functions|user-defined function]] can be used to test for positive definiteness: | ||
+ | |||
+ | Declaration: | ||
+ | :'''IsPosDefinite'''(A: Number[I, J]; I, J: Index) | ||
+ | Description: | ||
+ | :Returns true (1) if «A» is positive-definite, 0 (false) otherwise. | ||
+ | Definition: | ||
+ | ::<code>Min(EigenDecomp(A + Transpose(A, I, J), I, J)[.Item = 'value'], J) > 0</code> | ||
+ | |||
+ | == Complex numbers == | ||
+ | When «C» contains [[Complex Numbers|complex numbers]], then the matrix must be [http://en.wikipedia.org/wiki/Hermitian_matrix Hermitian] and positive definite. The Hermitian condition is the same as the symmetric condition for real-valued matrices, but requires the [[transpose]] to be the complex conjugate of the matrix. | ||
+ | |||
+ | == See Also == | ||
+ | * [[SingularValueDecomp]] | ||
+ | * [[EigenDecomp]] | ||
+ | * [[Transpose]] | ||
+ | * [[MatrixMultiply]] | ||
+ | * [[Matrix functions]] | ||
+ | * [[Complex Numbers]] |
Latest revision as of 23:03, 8 March 2016
Decompose(C, I, J)
Returns the Cholesky decomposition (square root) matrix of matrix «C» along dimensions «I» and «J». Matrix «C» must be symmetric and positive-definite. (Positive-definite means that v*C*v > 0, for all vectors v.)
Cholesky decomposition computes a lower diagonal matrix L such that L*L' = C, where L' is the transpose of L.
Testing for positive definiteness
To avoid an error, the following user-defined function can be used to test for positive definiteness:
Declaration:
- IsPosDefinite(A: Number[I, J]; I, J: Index)
Description:
- Returns true (1) if «A» is positive-definite, 0 (false) otherwise.
Definition:
Min(EigenDecomp(A + Transpose(A, I, J), I, J)[.Item = 'value'], J) > 0
Complex numbers
When «C» contains complex numbers, then the matrix must be Hermitian and positive definite. The Hermitian condition is the same as the symmetric condition for real-valued matrices, but requires the transpose to be the complex conjugate of the matrix.
See Also
Comments
Enable comment auto-refresher