Developer Reference for Intel® oneAPI Math Kernel Library for C
mkl_?tppack
Copies a triangular/symmetric matrix or submatrix from standard full format to standard packed format.
Syntax
lapack_int LAPACKE_mkl_stppack ( intmatrix_layout , charuplo , chartrans , lapack_intn , float*ap , lapack_inti , lapack_intj , lapack_introws , lapack_intcols , constfloat*a , lapack_intlda );
lapack_int LAPACKE_mkl_dtppack ( intmatrix_layout , charuplo , chartrans , lapack_intn , double*ap , lapack_inti , lapack_intj , lapack_introws , lapack_intcols , constdouble*a , lapack_intlda );
lapack_int LAPACKE_mkl_ctppack ( intmatrix_layout , charuplo , chartrans , lapack_intn , MKL_Complex8*ap , lapack_inti , lapack_intj , lapack_introws , lapack_intcols , constMKL_Complex8*a , lapack_intlda );
lapack_int LAPACKE_mkl_ztppack ( intmatrix_layout , charuplo , chartrans , lapack_intn , MKL_Complex16*ap , lapack_inti , lapack_intj , lapack_introws , lapack_intcols , constMKL_Complex16*a , lapack_intlda );
Include Files
mkl.h
Description
The routine copies a triangular or symmetric matrix or its submatrix from standard full format to packed format
AP_{i: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
Input Parameters
A <datatype> placeholder, if present, is used for the C interface data types in the C interface section above. See C Interface Conventions for the C interface principal conventions and type definitions.
uplo
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
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) = A^{T} . If trans = ‘C’,conjugate transpose: op(A) = A^{H} . For real data this is the same as trans = ‘T’.
n
The order of the matrix AP ; n ≥ 0
i, j
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
Number of rows in the destination submatrix. 0 ≤ rows ≤ n - i + 1.
cols
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 is trans = ‘N’ trans =’T’ or trans =’C’ matrix_layout = LAPACK_COL_MAJOR lda * colslda * rowsmatrix_layout = LAPACK_ROW_MAJOR lda * rowslda * cols
lda
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’. trans = ‘N’ trans =’T’ or trans =’C’ matrix_layout = LAPACK_COL_MAJOR lda ≥ max(1, rows ) lda ≥ max(1, cols ) matrix_layout = LAPACK_ROW_MAJOR lda ≥ max(1, cols ) lda ≥ max(1, rows )
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.
Return Values
This function returns a value info . If info =0, the execution is successful. If info = - i , the i -th parameter had an illegal value.