p?potrs
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?potrs
function
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
) = U
H
*U
, or sub(A
) = L*L
H
computed by
p?potrf
. Input Parameters
- uplo
- (global) Must be'U'or'L'.If, upper triangle of sub(uplo='U'A) is stored;If, lower triangle of sub(uplo='L'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 sizesandlld_a*LOCc(ja+n-1), respectively.lld_b*LOCc(jb+nrhs-1)The arrayacontains the factorsLorUfrom the Cholesky factorization sub(A) =L*Lor sub(HA) =UH*U, as computed byp?potrf.On entry, the arraybcontains the local pieces of the right hand sides sub(B).
- ia,ja
- (global) The row and column indices in the global matrixAindicating the first row and the first column of the matrix sub(A), respectively.
- desca
- (global and local) array of sizedlen_. The array descriptor for the distributed matrixA.
- ib,jb
- (global) The row and column indices in the global matrixBindicating the first row and the first column of the matrix sub(B), respectively.
- descb
- (local) array of sizedlen_. The array descriptor for the distributed matrixB.
Output Parameters
- b
- Overwritten by the local pieces of the solution matrixX.
- info
- If, the execution is successful.info=0: if theinfo< 0i-th argument is an array and thej-th entry, indexedhad an illegal value, thenj- 1,info= -(i*100+j); if thei-th argument is a scalar and had an illegal value, theninfo=-i.