HPD solve

Implementation

Solves \(AX=B\), \(A^T X = B\), or \(A^H X=B\) for \(X\) given Hermitian positive-definite (HPD) \(A\) and right-hand side matrix \(B\) (note that these options are all identical except for when \(A\). is complex). The solution is computed by first finding the Cholesky factorization of \(A\) and then performing two successive triangular solves against \(B\).

Note that only the uplo triangle of \(A\) is accessed by the below routines.

C++ API

void HPDSolve(UpperOrLower uplo, Orientation orientation, Matrix<F> &A, Matrix<F> &B)
void HPDSolve(UpperOrLower uplo, Orientation orientation, AbstractDistMatrix<F> &A, AbstractDistMatrix<F> &B)

C API

ElError ElHPDSolve_s(ElUpperOrLower uplo, ElOrientation orientation, ElMatrix_s A, ElMatrix_s B)
ElError ElHPDSolve_d(ElUpperOrLower uplo, ElOrientation orientation, ElMatrix_d A, ElMatrix_d B)
ElError ElHPDSolve_c(ElUpperOrLower uplo, ElOrientation orientation, ElMatrix_c A, ElMatrix_c B)
ElError ElHPDSolve_z(ElUpperOrLower uplo, ElOrientation orientation, ElMatrix_z A, ElMatrix_z B)
ElError ElHPDSolveDist_s(ElUpperOrLower uplo, ElOrientation orientation, ElDistMatrix_s A, ElDistMatrix_s B)
ElError ElHPDSolveDist_d(ElUpperOrLower uplo, ElOrientation orientation, ElDistMatrix_d A, ElDistMatrix_d B)
ElError ElHPDSolveDist_c(ElUpperOrLower uplo, ElOrientation orientation, ElDistMatrix_c A, ElDistMatrix_c B)
ElError ElHPDSolveDist_z(ElUpperOrLower uplo, ElOrientation orientation, ElDistMatrix_z A, ElDistMatrix_z B)