DLANSP(3) returns the value of the one norm, or the Frobenius norm, or the infinity norm, or the element of largest absolute value of a real symmetric matrix A, supplied in packed form

SYNOPSIS

DOUBLE PRECISION
FUNCTION DLANSP( NORM, UPLO, N, AP, WORK )

    
CHARACTER NORM, UPLO

    
INTEGER N

    
DOUBLE PRECISION AP( * ), WORK( * )

PURPOSE

DLANSP returns the value of the one norm, or the Frobenius norm, or the infinity norm, or the element of largest absolute value of a real symmetric matrix A, supplied in packed form.

DESCRIPTION

DLANSP returns the value

   DLANSP = ( max(abs(A(i,j))), NORM = 'M' or 'm'

            (

            ( norm1(A),         NORM = '1', 'O' or 'o'

            (

            ( normI(A),         NORM = 'I' or 'i'

            (

            ( normF(A),         NORM = 'F', 'f', 'E' or 'e' where norm1 denotes the one norm of a matrix (maximum column sum), normI denotes the infinity norm of a matrix (maximum row sum) and normF denotes the Frobenius norm of a matrix (square root of sum of squares). Note that max(abs(A(i,j))) is not a consistent matrix norm.

ARGUMENTS

NORM (input) CHARACTER*1
Specifies the value to be returned in DLANSP as described above.
UPLO (input) CHARACTER*1
Specifies whether the upper or lower triangular part of the symmetric matrix A is supplied. = 'U': Upper triangular part of A is supplied
= 'L': Lower triangular part of A is supplied
N (input) INTEGER
The order of the matrix A. N >= 0. When N = 0, DLANSP is set to zero.
AP (input) DOUBLE PRECISION array, dimension (N*(N+1)/2)
The upper or lower triangle of the symmetric matrix A, packed columnwise in a linear array. The j-th column of A is stored in the array AP as follows: if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j; if UPLO = 'L', AP(i + (j-1)*(2n-j)/2) = A(i,j) for j<=i<=n.
WORK (workspace) DOUBLE PRECISION array, dimension (MAX(1,LWORK)),
where LWORK >= N when NORM = 'I' or '1' or 'O'; otherwise, WORK is not referenced.