y ← ##.Cholesky x ⍝ decomposition of Hermitian positive-definite matrix. From Roger Hui: see http://www.jsoftware.com/jwiki/Essays/Cholesky%20Decomposition for the derivation. Examples: x←t+.×⍉t←¯10+?5 5⍴20 x 153 ¯14 10 ¯117 ¯48 ¯14 286 ¯158 ¯203 72 10 ¯158 178 112 ¯3 ¯117 ¯203 112 274 ¯16 ¯48 72 ¯3 ¯16 49 y←Cholesky x y 12.3693 0 0 0 0 ¯1.13183 16.8736 0 0 0 0.808452 ¯9.3095 9.52258 0 0 ¯9.45889 ¯12.6651 0.182868 4.90831 0 ¯3.88057 4.00672 3.93148 ¯0.545884 1.46044 x ≡ y +.× ⍉y 1 ⍝ The t+.×⍉t construct is a handy way to generate a Hermitian, positive definite ⍝ matrix. For real numbers, "Hermitian" is the same as symmetric (x≡⍉x); for ⍝ complex matrices; Hermitian means z≡+⍉z (conjugate transpose). z←t+.×+⍉t←(¯10+?5 5⍴20)+0j1ׯ10+?5 5⍴20 z 310 ¯51J¯092 93J0157 ¯31J145 244J¯024 ¯51J0092 357 ¯149J¯054 54J060 ¯192J0203 93J¯157 ¯149J0054 217 ¯16J115 113J¯203 ¯31J¯145 54J¯060 ¯16J¯115 397 10J¯048 244J0024 ¯192J¯203 113J0203 10J048 384 y←Cholesky z z ≡ y +.× +⍉y 1 ⍝ So the Cholesky decomposition is a sort of "square root" y of a Hermitian ⍝ positive matrix z, such that y is lower-triangular and z≡y+.×+⍉y. See also: det gauss_jordan Back to: contents Back to: Workspaces