Visible to Intel only — GUID: GUID-5BFB4310-625F-43FC-B982-0AC8AAB61639
Visible to Intel only — GUID: GUID-5BFB4310-625F-43FC-B982-0AC8AAB61639
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
val = pslansy(norm, uplo, n, a, ia, ja, desca, work)
val = pdlansy(norm, uplo, n, a, ia, ja, desca, work)
val = pclansy(norm, uplo, n, a, ia, ja, desca, work)
val = pzlansy(norm, uplo, n, a, ia, ja, desca, work)
val = pclanhe(norm, uplo, n, a, ia, ja, desca, work)
val = pzlanhe(norm, uplo, n, a, ia, ja, desca, work)
Description
The p?lansy and p?lanheroutines 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-1, ja:ja+n-1).
Input Parameters
- norm
-
(global) CHARACTER. Specifies what value is returned by the routine:
= 'M' or 'm': val = max(abs(Aij)), 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) CHARACTER. 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) INTEGER.
The number of columns in the distributed matrix sub(A). When n = 0, p?lansy is set to zero. n ≥ 0.
- a
-
(local).
REAL for pslansy
DOUBLE PRECISION for pdlansy
COMPLEX for pclansy, pclanhe
COMPLEX*16 for pzlansy, pzlanhe.
Pointer into the local memory to an array of size (lld_a, LOCc(ja+n-1)) containing the local pieces of the distributed matrix sub(A).
If uplo = 'U', the leading n-by-n upper 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 uplo = 'L', the leading n-by-n lower 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) INTEGER. 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) INTEGER array of size dlen_. The array descriptor for the distributed matrix A.
- work
-
(local).
REAL for pslansy, pclansy, pclanhe
DOUBLE PRECISION for pdlansy, pzlansy, pzlanhe
Array of size lwork.
lwork ≥ 0 if norm = 'M' or 'm' (not referenced),
2*nq0+mp0+ldw if norm = '1', 'O' or 'o', 'I' or 'i',
where ldw is given by:
if( nprow≠npcol ) then
ldw = mb_a*iceil(iceil(np0,mb_a),(lcm/nprow))
else
ldw = 0
end if
0 if norm = 'F', 'f', 'E' or 'e' (not referenced),
where lcm is the least common multiple of nprow and npcol, lcm = ilcm( nprow, npcol ) and iceil(x,y) is a ScaLAPACK function that returns ceiling (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, and numroc are ScaLAPACK tool functions; myrow, mycol, nprow, and npcol can be determined by calling the subroutine blacs_gridinfo.
Output Parameters
- val
-
The value returned by the routine.