PAL Matrix Operations: Decompositions, Eigenvalues, and Inverses
Cholesky, SVD, eigenvalue, inverse, pseudoinverse, and LU decomposition routines.
|
|
|---|---|
KiratPalMatrixComplexInverseSignature
T_INT KiratPalMatrixComplexInverse( T_COMPLEX** ppfToInvert, T_INT* piBufferPivotIndices, T_COMPLEX** ppcTemp, T_INT iSize);Description
Computes the inverse of a matrix. Mathematical operation
\(B=A^{-1}\), computed through the implementation\'s LU/inversion path. Supported implementations
|
|
KiratPalMatrixComplexLuDecompSignature
T_INT KiratPalMatrixComplexLuDecomp( T_COMPLEX** ppcLUdcmp, T_INT* piBufferPivotIndices, T_INT iSize);Description
Computes an LU decomposition for solving linear systems or matrix inversion. Mathematical operation
\(PA=LU\) with pivoting. Supported implementations
|
|
KiratPalMatrixComplexLuInverseSignature
T_INT KiratPalMatrixComplexLuInverse( T_COMPLEX** ppcLUdcmp, T_INT* piBufferPivotIndices, T_COMPLEX** ppcTemp, T_INT iSize);Description
Computes a matrix inverse from a previously calculated LU decomposition. Mathematical operation
\(B=A^{-1}\), computed through the implementation\'s LU/inversion path. Supported implementations
|
|
KiratPalMatrixFloatCholeskyDecompSignature
T_INT KiratPalMatrixFloatCholeskyDecomp(T_FLOAT** ppfSource, T_INT iSizeDim);Description
Computes the Cholesky decomposition of a symmetric positive-definite matrix, A = L Lᵀ. Mathematical operation
\(A=LL^T\) for a real symmetric positive-definite matrix. Supported implementations
|
|
KiratPalMatrixFloatCholeskyInvertSignature
T_INT KiratPalMatrixFloatCholeskyInvert(T_FLOAT** ppfSource, T_FLOAT** ppfCholdc, T_INT iSizeDim);Description
Computes a matrix inverse based on a Cholesky decomposition. Mathematical operation
\(A^{-1}=L^{-T}L^{-1}\) after \(A=LL^T\). Supported implementations
|
|
KiratPalMatrixFloatEvdSignature
void KiratPalMatrixFloatEvd( T_FLOAT** ppfSource, T_FLOAT** ppfV, T_FLOAT* pfD, T_FLOAT* pfTmp1, T_FLOAT* pfTmp2, T_INT iSizeDim);Description
Computes the eigendecomposition of a symmetric matrix. Mathematical operation
\(AV=V\Lambda\); the unsymmetric variant can return complex eigenvalues/eigenvectors. Supported implementations
|
|
KiratPalMatrixFloatEvdUnsymSignature
void KiratPalMatrixFloatEvdUnsym( T_DOUBLE** ppdSource, T_COMPLEX** ppcV, T_COMPLEX* pcD, T_INT iSizeDim, T_BOOL bVec, T_BOOL bHes, T_BOOL* bNoRootsFound, T_DOUBLE** ppdHelperMatrix, T_DOUBLE* pdHelperScale, T_INT* piHelperPerm);Description
Computes the eigendecomposition of a non-symmetric real matrix; eigenvalues and, where applicable, eigenvectors may be complex. Mathematical operation
\(AV=V\Lambda\); the unsymmetric variant can return complex eigenvalues/eigenvectors. Supported implementations
|
|
KiratPalMatrixFloatInverseSignature
T_INT KiratPalMatrixFloatInverse( T_FLOAT** ppfToInvert, T_FLOAT** ppfBufferCholeskyDecomp, T_FLOAT** ppfInverted, T_INT iSize);Description
Computes the inverse of a matrix. Mathematical operation
\(B=A^{-1}\), computed through the implementation\'s LU/inversion path. Supported implementations
|
|
KiratPalMatrixFloatLuDecompSignature
void KiratPalMatrixFloatLuDecomp(T_FLOAT** ppfLUdcmp, T_FLOAT* pfScaleVec, T_INT* iD, T_INT iDim);Description
Computes an LU decomposition for solving linear systems or matrix inversion. Mathematical operation
\(PA=LU\) with pivoting. Supported implementations
|
|
KiratPalMatrixFloatPseudoinverseAutoSignature
void KiratPalMatrixFloatPseudoinverseAuto( T_FLOAT** ppfToInvert, T_FLOAT** ppfBuffer, T_FLOAT** ppfInverted, T_INT iDim1, T_INT iDim2);Description
Computes a Moore-Penrose pseudoinverse. Left/Right selects the corresponding normal-equation form, while Auto chooses based on matrix shape. Mathematical operation
\(A^+\) is selected from the left or right normal-equation form according to the matrix dimensions. Supported implementations
|
|
KiratPalMatrixFloatPseudoinverseLeftSignature
void KiratPalMatrixFloatPseudoinverseLeft( T_FLOAT** ppfToInvert, T_FLOAT** ppfBuffer, T_FLOAT** ppfInverted, T_INT iDim1, T_INT iDim2);Description
Computes a Moore-Penrose pseudoinverse. Left/Right selects the corresponding normal-equation form, while Auto chooses based on matrix shape. Mathematical operation
\(A^+=(A^TA)^{-1}A^T\). Supported implementations
|
|
KiratPalMatrixFloatPseudoinverseRightSignature
void KiratPalMatrixFloatPseudoinverseRight( T_FLOAT** ppfToInvert, T_FLOAT** ppfBuffer, T_FLOAT** ppfInverted, T_INT iDim1, T_INT iDim2);Description
Computes a Moore-Penrose pseudoinverse. Left/Right selects the corresponding normal-equation form, while Auto chooses based on matrix shape. Mathematical operation
\(A^+=A^T(AA^T)^{-1}\). Supported implementations
|
|
KiratPalMatrixFloatSvdSignature
void KiratPalMatrixFloatSvd( T_FLOAT** ppfSource, T_FLOAT* pfW, T_FLOAT** ppfV, T_FLOAT* pfTmp1, T_FLOAT* pfTmp2, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iNumItsMax);Description
Computes the singular value decomposition of a matrix, A = UΣVᵀ. Mathematical operation
\(A=U\Sigma V^T\). Supported implementations
|