MF_CholeskyLdecompose MD_CholeskyLdecompose ME_CholeskyLdecompose
MF_CholeskyRdecompose MD_CholeskyRdecompose ME_CholeskyRdecompose
FunktionCholesky-Faktorisierung einer symmetrischen, positiv-definiten Matrix
Syntax C/C++#include <MFstd.h>
int MF_CholeskyLdecompose( fMatrix ML, fMatrix MA, ui len );
int MF_CholeskyRdecompose( fMatrix MR, fMatrix MA, ui len );
C++ MatObj#include <OptiVec.h>
void matrix<T>::CholeskyLdecompose( const matrix<T>& MA );
void matrix<T>::CholeskyRdecompose( const matrix<T>& MA );
Pascal/Delphiuses MFstd;
function MF_CholeskyLdecompose( ML:fMatrix; MA:fMatrix; len:UIntSize ):Integer;
function MF_CholeskyRdecompose( MR:fMatrix; MA:fMatrix; len:UIntSize ):Integer;
BeschreibungDie symmetrische Eingabematrix MA wird in ein Produkt MA = ML * MR zerlegt, wobei ML eine linke (untere) Dreiecksmatrix ist, deren Diagonal-Elemente alle gleich 1 sind, und MR ist eine rechte (obere) Dreiecks-Matrix, wobei MR = MLT. Da also MR die Transponierte von ML ist, ist die vollständige Information in jeder der beiden einzeln enthalten. Daher kann man wählen, entweder mittels MF_CholeskyLdecompose ML zu erhalten oder mittels MF_CholeskyLdecompose MR. Nicht alle symmetrischen Matrizen lassen sich in dieser Weise zerlegen, sondern nur die sogenannten positiv-definiten.

MA darf von ML bzw. MR überschrieben werden, falls gewünscht.
Der Rückgabewert von MF_CholeskyLdecompose und MF_CholeskyRdecompose zeigt an, ob die Zerlegung erfolgreich war (Rückgabewert 0) oder ob die Eingabe-Matrix nicht-positiv-definit ist (Rückgabewert 1).

FehlerbehandlungIm Falle einer nicht-positiv-definiten Matrix bleibt ML bzw. MR undefiniert, und der Rückgabewert wird auf 1 gesetzt.
RückgabewertBei Erfolg FALSE(0), andernfalls TRUE (1)
QuerverweisKap. 10

MatrixLib Inhaltsverzeichnis  OptiVec Home