p?lacp2
p?lacp2
Copies all or part of a distributed matrix to another distributed matrix.
Syntax
void
pslacp2
(
char
*uplo
,
MKL_INT
*m
,
MKL_INT
*n
,
float
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
float
*b
,
MKL_INT
*ib
,
MKL_INT
*jb
,
MKL_INT
*descb
);
void
pdlacp2
(
char
*uplo
,
MKL_INT
*m
,
MKL_INT
*n
,
double
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
double
*b
,
MKL_INT
*ib
,
MKL_INT
*jb
,
MKL_INT
*descb
);
void
pclacp2
(
char
*uplo
,
MKL_INT
*m
,
MKL_INT
*n
,
MKL_Complex8
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
MKL_Complex8
*b
,
MKL_INT
*ib
,
MKL_INT
*jb
,
MKL_INT
*descb
);
void
pzlacp2
(
char
*uplo
,
MKL_INT
*m
,
MKL_INT
*n
,
MKL_Complex16
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
MKL_Complex16
*b
,
MKL_INT
*ib
,
MKL_INT
*jb
,
MKL_INT
*descb
);
Include Files
- mkl_scalapack.h
Description
The , and sub(, .
p?lacp2
function
copies all or part of a distributed matrix A
to another distributed matrix B
. No communication is performed, p?lacp2
performs a local copy sub(A
):= sub(B
), where sub(A
) denotes A
(ia
:ia
+m
-1a
:ja
+n
-1)B
) denotes B
(ib
:ib
+m
-1jb
:jb
+n
-1)p?lacp2
requires that only dimension of the matrix operands is distributed.Input Parameters
- uplo
- (global) Specifies the part of the distributed matrix sub(A) to be copied:='U': Upper triangular part is copied; the strictly lower triangular part of sub(A) is not referenced;='L': Lower triangular part is copied; the strictly upper triangular part of sub(A) is not referenced.Otherwise: all of the matrix sub(A) is copied.
- m
- (global)The number of rows in the distributed matrix sub(A).(.m≥0)
- n
- (global)The number of columns in the distributed matrix sub(A).(.n≥0)
- a
- (local).Pointer into the local memory to an array of size.*lld_aLOCc(ja+n-1)On entry, this array contains the local pieces of them-by-ndistributed matrix sub(A).
- ia,ja
- (global) The row and column indices in the global matrixAindicating the first row and the first column of 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 sub(B), respectively.
- descb
- (global and local) array of sizedlen_. The array descriptor for the distributed matrixB.
Output Parameters
- b
- (local).Pointer into the local memory to an array of size. This array contains on exit the local pieces of the distributed matrix sub(*lld_bLOCc(jb+n-1)B) set as follows:if,uplo='U'B(ib+i-1,jb+j-1) =A(ia+i-1,ja+j-1), 1≤i≤j, 1≤j≤n;if,uplo='L'B(ib+i-1,jb+j-1) =A(ia+i-1,ja+j-1),j≤i≤m, 1≤j≤n;otherwise,B(ib+i-1,jb+j-1) =A(ia+i-1,ja+j-1), 1≤i≤m, 1≤j≤n.