p?lansy, p?lanhe
p?lansy
, p?lanhe
Returns the value of the 1-norm, Frobenius norm, infinity-norm, or the largest absolute value of any element, of a real symmetric or a complex Hermitian matrix.
Syntax
float
pslansy
(
char
*norm
,
char
*uplo
,
MKL_INT
*n
,
float
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
float
*work
);
double
pdlansy
(
char
*norm
,
char
*uplo
,
MKL_INT
*n
,
double
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
double
*work
);
float
pclansy
(
char
*norm
,
char
*uplo
,
MKL_INT
*n
,
MKL_Complex8
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
float
*work
);
double
pzlansy
(
char
*norm
,
char
*uplo
,
MKL_INT
*n
,
MKL_Complex16
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
double
*work
);
float
pclanhe
(
char
*norm
,
char
*uplo
,
MKL_INT
*n
,
MKL_Complex8
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
float
*work
);
double
pzlanhe
(
char
*norm
,
char
*uplo
,
MKL_INT
*n
,
MKL_Complex16
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
double
*work
);
Include Files
- mkl_scalapack.h
Description
The
p?lansy
and p?lanhe
functions
return the value of the 1-norm, or the Frobenius norm, or the infinity norm, or the element of largest absolute value of a distributed matrix sub(,
.A
) = A
(ia
:ia
+m
-1ja
:ja
+n
-1)Input Parameters
- norm
- (global) Specifies what value is returned by thefunction:='M'or'm':, largest absolute value of the matrixval=max(abs(Aij))A, it s not a matrix norm.='1'or'O'or'o':, 1-norm of the matrixval=norm1(A)A(maximum column sum),='I'or'i':, infinity norm of the matrixval=normI(A)A(maximum row sum),='F','f','E'or'e':, Frobenius norm of the matrixval=normF(A)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 triangular part of sub(A) is referenced,='L': Lower triangular part of sub(A) is referenced.
- n
- (global)The number of columns in the distributed matrix sub(A). When,n= 0p?lansyis set to zero.n≥0.
- a
- (local).Pointer into the local memory to an array of sizecontaining the local pieces of the distributed matrix sub(lld_a*LOCc(ja+n-1)A).If, the leadinguplo='U'n-by-nupper triangular part of sub(A) contains the upper triangular matrix whose norm is to be computed, and the strictly lower triangular part of this matrix is not referenced. If, the leadinguplo='L'n-by-nlower triangular part of sub(A) contains the lower triangular matrix whose norm is to be computed, and the strictly upper triangular part of sub(A) is not referenced.
- ia,ja
- (global) The row and column indices in the global matrixAindicating the first row and the first column of the matrix sub(A), respectively.
- desca
- (global and local) array of sizedlen_. The array descriptor for the distributed matrixA.
- work
- (local).Array of sizelwork.lwork≥0 ifnorm='M'or'm'(not referenced),2*ifnq0+mp0+ldwnorm= '1','O'or'o','I'or'i',whereldwis given by:if(nprow≠npcol) thenldw=mb_a*iceil(iceil(np0,mb_a),(lcm/nprow))elseldw= 0end if0 if,norm='F''f','E'or'e'(not referenced),wherelcmis the least common multiple ofnprowandandnpcol,lcm= ilcm(nprow,npcol)is a ScaLAPACK function that returns ceilingiceil(x,y)(.x/y)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),ilcm,iceil,indxg2p, andnumrocare ScaLAPACK tool functions;myrow,mycol,nprow, andnpcolcan be determined by calling thefunctionblacs_gridinfo.
Output Parameters
- val
- The value returned by thefunction.