Visible to Intel only — GUID: GUID-E72E69C2-316E-4124-A0A2-9213DC535A98
Visible to Intel only — GUID: GUID-E72E69C2-316E-4124-A0A2-9213DC535A98
mkl_?tppack
Copies a triangular/symmetric matrix or submatrix from standard full format to standard packed format.
Syntax
call mkl_stppack (uplo, trans, n, ap, i, j, rows, cols, a, lda, info )
call mkl_dtppack (uplo, trans, n, ap, i, j, rows, cols, a, lda, info )
call mkl_ctppack (uplo, trans, n, ap, i, j, rows, cols, a, lda, info )
call mkl_ztppack (uplo, trans, n, ap, i, j, rows, cols, a, lda, info )
call mkl_tppack (ap, i, j, rows, cols, a[, uplo] [, trans] [, info])
Include Files
- mkl.fi, mkl_lapack.f90
Description
The routine copies a triangular or symmetric matrix or its submatrix from standard full format to packed format
APi:i+rows-1, j:j+cols-1 := op(A)
Standard packed formats include:
TP: triangular packed storage
SP: symmetric indefinite packed storage
HP: Hermitian indefinite packed storage
PP: symmetric or Hermitian positive definite packed storage
Full formats include:
GE: general
TR: triangular
SY: symmetric indefinite
HE: Hermitian indefinite
PO: symmetric or Hermitian positive definite
Any elements of the copied submatrix rectangular outside of the triangular part of the matrix AP are skipped.
Input Parameters
The data types are given for the Fortran interface.
- uplo
-
CHARACTER*1. Specifies whether the matrix AP is upper or lower triangular.
If uplo = 'U', AP is upper triangular.
If uplo = 'L': AP is lower triangular.
- trans
-
CHARACTER*1. Specifies whether or not the copied block of A is transposed or not.
If trans = 'N', no transpose: op(A) = A.
If trans = 'T',transpose: op(A) = AT.
If trans = 'C',conjugate transpose: op(A) = AH. For real data this is the same as trans = 'T'.
- n
-
INTEGER. The order of the matrix AP; n ≥ 0
- i, j
-
INTEGER. Coordinates of the left upper corner of the destination submatrix in AP.
If uplo=’U’, 1 ≤i≤j≤n.
If uplo=’L’, 1 ≤j≤i≤n.
- rows
-
INTEGER. Number of rows in the destination submatrix. 0 ≤rows≤n - i + 1.
- cols
-
INTEGER. Number of columns in the destination submatrix. 0 ≤cols≤n - j + 1.
- a
-
REAL for mkl_stppack
DOUBLE PRECISION for mkl_dtppack
COMPLEX for mkl_ctppack
DOUBLE COMPLEX for mkl_ztppack
Pointer to the source submatrix.
Array a(lda, *) contains the rows-by-cols submatrix stored as unpacked rows-by-columns if trans = ’N’, or unpacked columns-by-rows if trans = ’T’ or trans = ’C’. The size of a must be at least lda*cols for trans = 'N' or lda*rows for trans='T' or trans='C'.
NOTE:If there are elements outside of the triangular part of AP, they are skipped and are not copied from a.
- lda
-
INTEGER. The leading dimension of the array a.
lda≥ max(1, rows) for trans = 'N' and and lda≥ max(1, cols) for trans='T' or trans='C'.
Output Parameters
ap |
REAL for mkl_stppack DOUBLE PRECISION for mkl_dtppack COMPLEX for mkl_ctppack DOUBLE COMPLEX for mkl_ztppack Array of size at least max(1, n(n+1)/2). The array ap contains either the upper or the lower triangular part of the matrix AP (as specified by uplo) in packed storage (see Matrix Storage Schemes). The submatrix of ap from row i to row i + rows - 1 and column j to column j + cols - 1 is overwritten with a copy of the source matrix. |
info |
INTEGER. If info=0, the execution is successful. If info = -i, the i-th parameter had an illegal value. |