Visible to Intel only — GUID: GUID-E28B0A01-83C9-46AD-A391-AAFBFFE2E7BD
Visible to Intel only — GUID: GUID-E28B0A01-83C9-46AD-A391-AAFBFFE2E7BD
p?potrs
Solves a system of linear equations with a Cholesky-factored symmetric/Hermitian distributed positive-definite matrix.
Syntax
void pspotrs (char *uplo , MKL_INT *n , MKL_INT *nrhs , float *a , MKL_INT *ia , MKL_INT *ja , MKL_INT *desca , float *b , MKL_INT *ib , MKL_INT *jb , MKL_INT *descb , MKL_INT *info );
void pdpotrs (char *uplo , MKL_INT *n , MKL_INT *nrhs , double *a , MKL_INT *ia , MKL_INT *ja , MKL_INT *desca , double *b , MKL_INT *ib , MKL_INT *jb , MKL_INT *descb , MKL_INT *info );
void pcpotrs (char *uplo , MKL_INT *n , MKL_INT *nrhs , MKL_Complex8 *a , MKL_INT *ia , MKL_INT *ja , MKL_INT *desca , MKL_Complex8 *b , MKL_INT *ib , MKL_INT *jb , MKL_INT *descb , MKL_INT *info );
void pzpotrs (char *uplo , MKL_INT *n , MKL_INT *nrhs , MKL_Complex16 *a , MKL_INT *ia , MKL_INT *ja , MKL_INT *desca , MKL_Complex16 *b , MKL_INT *ib , MKL_INT *jb , MKL_INT *descb , MKL_INT *info );
Include Files
- mkl_scalapack.h
Description
The p?potrsfunction solves for X a system of distributed linear equations in the form:
sub(A)*X = sub(B) ,
where sub(A) = A(ia:ia+n-1, ja:ja+n-1) is an n-by-n real symmetric or complex Hermitian positive definite distributed matrix, and sub(B) denotes the distributed matrix B(ib:ib+n-1, jb:jb+nrhs-1).
This function uses Cholesky factorization
sub(A) = UH*U, or sub(A) = L*LH
computed by p?potrf.
Input Parameters
- uplo
-
(global) Must be 'U' or 'L'.
If uplo = 'U', upper triangle of sub(A) is stored;
If uplo = 'L', lower triangle of sub(A) is stored.
- n
-
(global) The order of the distributed matrix sub(A) (n≥0).
- nrhs
-
(global) The number of right hand sides; the number of columns of the distributed matrix sub(B) (nrhs≥0).
- a, b
-
(local)
Pointers into the local memory to arrays of local sizes
lld_a*LOCc(ja+n-1) and lld_b*LOCc(jb+nrhs-1), respectively.
The array a contains the factors L or U from the Cholesky factorization sub(A) = L*LH or sub(A) = UH*U, as computed by p?potrf.
On entry, the array b contains the local pieces of the right hand sides sub(B).
- ia, ja
-
(global) The row and column indices in the global matrix A indicating the first row and the first column of the matrix sub(A), respectively.
- desca
-
(global and local) array of size dlen_. The array descriptor for the distributed matrix A.
- ib, jb
-
(global) The row and column indices in the global matrix B indicating the first row and the first column of the matrix sub(B), respectively.
- descb
-
(local) array of size dlen_. The array descriptor for the distributed matrix B.
Output Parameters
- b
-
Overwritten by the local pieces of the solution matrix X.
- info
-
If info=0, the execution is successful.
info < 0: if the i-th argument is an array and the j-th entry, indexed j - 1, had an illegal value, then info = -(i*100+j); if the i-th argument is a scalar and had an illegal value, then info = -i.