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.
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)
The p?lansy and p?lanhe routines 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).
(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).
(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.
(global) INTEGER.
The number of columns to be operated on i.e the number of columns of the distributed submatrix sub(A). When n = 0, p?lansy is set to zero. n ≥ 0.
(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 DIMENSION (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.
(global) INTEGER. The row and column indices in the global array A indicating the first row and the first column of the submatrix sub(A), respectively.
(global and local) INTEGER array, DIMENSION (dlen_). The array descriptor for the distributed matrix A.
(local).
REAL for pslansy, pclansy, pclanhe
DOUBLE PRECISION for pdlansy, pzlansy, pzlanhe
Array DIMENSION (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.ne.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.
Copyright © 1994 - 2011, Intel Corporation. All rights reserved.