Developer Reference for Intel® oneAPI Math Kernel Library for C
p?lantr
Returns the value of the 1-norm, Frobenius norm, infinity-norm, or the largest absolute value of any element, of a triangular matrix.
Syntax
floatpslantr ( char*norm , char*uplo , char*diag , MKL_INT*m , MKL_INT*n , float*a , MKL_INT*ia , MKL_INT*ja , MKL_INT*desca , float*work );
doublepdlantr ( char*norm , char*uplo , char*diag , MKL_INT*m , MKL_INT*n , double*a , MKL_INT*ia , MKL_INT*ja , MKL_INT*desca , double*work );
floatpclantr ( char*norm , char*uplo , char*diag , MKL_INT*m , MKL_INT*n , MKL_Complex8*a , MKL_INT*ia , MKL_INT*ja , MKL_INT*desca , float*work );
doublepzlantr ( char*norm , char*uplo , char*diag , MKL_INT*m , MKL_INT*n , MKL_Complex16*a , MKL_INT*ia , MKL_INT*ja , MKL_INT*desca , double*work );
Include Files
mkl_scalapack.h
Description
pslantr pdlantr pclantr pzlantr The p?lantr routine function returns the value of the 1-norm, or the Frobenius norm, or the infinity norm, or the element of largest absolute value of a trapezoidal or triangular distributed matrix sub(A) = A(ia:ia+m-1 , ja:ja+n-1) .
Input Parameters
norm
(global) Specifies what value is returned by the function :
= ‘M’ or ‘m’: val = max(abs(A_{ij})) , largest absolute value of the matrix A , it s not a matrix norm. = ‘1’ or ‘O’ or ‘o’: val = norm1(A) , 1-norm of the matrix A (maximum column sum), = ‘I’ or ‘i’: val = normI(A) , infinity norm of the matrix A (maximum row sum), = ‘F’ , ‘f’ , ‘E’ or ‘e’: val = normF(A) , Frobenius norm of the matrix A (square root of sum of squares).
uplo
(global)
Specifies whether the upper or lower triangular part of the symmetric matrix sub( A ) is to be referenced. = ‘U’ : Upper trapezoidal, = ‘L’ : Lower trapezoidal. Note that sub( A ) is triangular instead of trapezoidal if m = n .
diag
(global)
Specifies whether the distributed matrix sub( A ) has unit diagonal. = ‘N’ : Non-unit diagonal. = ‘U’ : Unit diagonal.
m
(global)
The number of rows in the distributed matrix sub( A ). When m = 0 , p?lantr is set to zero. m ≥ 0 .
n
(global)
The number of columns in the distributed matrix sub( A ). When n = 0 , p?lantr is set to zero. n ≥ 0 .
- a
-
(local). REAL for pslantr DOUBLE PRECISION for pdlantr COMPLEX for pclantr COMPLEX*16 for pzlantr .
Pointer into the local memory to an array of size (lld_a, LOCc(ja+n-1))lld_a * LOCc(ja+n-1) containing the local pieces of the distributed matrix sub( A ).
ia , ja
(global)
The row and column indices in the global matrix A indicating the first row and the first column of the matrix sub( A ), respectively.
desca
(global and local) array of size dlen_ . The array descriptor for the distributed matrix A.
- work
-
(local). REAL for pslantr DOUBLE PRECISION for pdlantr COMPLEX for pclantr COMPLEX*16 for pzlantr . Array size lwork . lwork ≥ 0 if norm = ‘M’ or ‘m’ (not referenced), nq 0 if norm = ‘1’, ‘O’ or ‘o’ , mp 0 if norm = ‘I’ or ‘i’ , 0 if norm = 'F' , ‘f’ , ‘E’ or ‘e’ (not referenced), iroffa = mod(ia-1, mb_a ) , icoffa = mod( ja-1, nb_a) , iarow = indxg2p(ia, mb_a, myrow, rsrc_a, nprow),iacol = indxg2p(ja, nb_a, mycol, csrc_a, npcol) , mp0 = numroc(m+iroffa, mb_a, myrow, iarow, nprow) , nq0 = numroc(n+icoffa, nb_a, mycol, iacol, npcol) ,
indxg2p and numroc are ScaLAPACK tool functions; myrow , mycol , nprow , and npcol can be determined by calling the function blacs_gridinfo .