Developer Reference for Intel® oneAPI Math Kernel Library for C
p?lascl
Multiplies a general rectangular matrix by a real scalar defined as C_{to}/C_{from} .
Syntax
voidpslascl ( char*type , float*cfrom , float*cto , MKL_INT*m , MKL_INT*n , float*a , MKL_INT*ia , MKL_INT*ja , MKL_INT*desca , MKL_INT*info );
voidpdlascl ( char*type , double*cfrom , double*cto , MKL_INT*m , MKL_INT*n , double*a , MKL_INT*ia , MKL_INT*ja , MKL_INT*desca , MKL_INT*info );
voidpclascl ( char*type , float*cfrom , float*cto , MKL_INT*m , MKL_INT*n , MKL_Complex8*a , MKL_INT*ia , MKL_INT*ja , MKL_INT*desca , MKL_INT*info );
voidpzlascl ( char*type , double*cfrom , double*cto , MKL_INT*m , MKL_INT*n , MKL_Complex16*a , MKL_INT*ia , MKL_INT*ja , MKL_INT*desca , MKL_INT*info );
Include Files
mkl_scalapack.h
Description
pslascl pdlascl pclascl pzlascl The p?lascl routine function multiplies the m -by- n real/complex distributed matrix sub( A ) denoting A(ia:ia+m-1, ja:ja+n-1) by the real/complex scalar cto/cfrom . This is done without over/underflow as long as the final result cto * A ( i , j )/ cfrom does not over/underflow. type specifies that sub( A ) may be full, upper triangular, lower triangular or upper Hessenberg.
Input Parameters
type
(global)
type indicates the storage type of the input distributed matrix. if type = 'G' : sub( A ) is a full matrix, if type = 'L' : sub( A ) is a lower triangular matrix, if type = 'U' : sub( A ) is an upper triangular matrix, if type = 'H' : sub( A ) is an upper Hessenberg matrix.
- cfrom , cto
-
(global) REAL for pslascl/pclascl DOUBLE PRECISION for pdlascl/pzlascl . The distributed matrix sub( A ) is multiplied by cto/cfrom . A ( i , j ) is computed without over/underflow if the final result cto * A ( i , j )/ cfrom can be represented without over/underflow. cfrom must be nonzero.
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 input/local output) REAL for pslascl DOUBLE PRECISION for pdlascl COMPLEX for pclascl COMPLEX*16 for pzlascl .
Pointer into the local memory to an array of size (lld_a, LOCc(ja+n-1))lld_a * LOCc ( ja + n -1) .
This array contains the local pieces of the distributed matrix sub( A ).
ia , ja
(global)
The column and row indices in the global matrix A indicating the first row and column of the matrix sub( A ), respectively.
desca
(global and local)
Array of size dlen_ .The array descriptor for the distributed matrix A .
Output Parameters
- a
-
(local). On exit, this array contains the local pieces of the distributed matrix multiplied by cto/cfrom .
- info
-
(local) INTEGER . if info = 0 : the execution is successful.
if 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 .