Purpose
To pack/unpack the upper or lower triangle of a symmetric matrix. The packed matrix is stored column-wise in the one-dimensional array AP.Specification
SUBROUTINE MA02DD( JOB, UPLO, N, A, LDA, AP ) C .. Scalar Arguments .. CHARACTER JOB, UPLO INTEGER LDA, N C .. Array Arguments .. DOUBLE PRECISION A(LDA,*), AP(*)Arguments
Mode Parameters
JOB CHARACTER*1 Specifies whether the matrix should be packed or unpacked, as follows: = 'P': The matrix should be packed; = 'U': The matrix should be unpacked. UPLO CHARACTER*1 Specifies the part of the matrix to be packed/unpacked, as follows: = 'U': Upper triangular part; = 'L': Lower triangular part.Input/Output Parameters
N (input) INTEGER The order of the matrix A. N >= 0. A (input or output) DOUBLE PRECISION array, dimension (LDA,N) This array is an input parameter if JOB = 'P', and an output parameter if JOB = 'U'. On entry, if JOB = 'P', the leading N-by-N upper triangular part (if UPLO = 'U'), or lower triangular part (if UPLO = 'L'), of this array must contain the corresponding upper or lower triangle of the symmetric matrix A, and the other strictly triangular part is not referenced. On exit, if JOB = 'U', the leading N-by-N upper triangular part (if UPLO = 'U'), or lower triangular part (if UPLO = 'L'), of this array contains the corresponding upper or lower triangle of the symmetric matrix A; the other strictly triangular part is not referenced. LDA INTEGER The leading dimension of the array A. LDA >= max(1,N). AP (output or input) DOUBLE PRECISION array, dimension (N*(N+1)/2) This array is an output parameter if JOB = 'P', and an input parameter if JOB = 'U'. On entry, if JOB = 'U', the leading N*(N+1)/2 elements of this array must contain the upper (if UPLO = 'U') or lower (if UPLO = 'L') triangle of the symmetric matrix A, packed column-wise. That is, the elements are stored in the order 11, 12, 22, ..., 1n, 2n, 3n, ..., nn, if UPLO = 'U'; 11, 21, 31, ..., n1, 22, 32, ..., n2, ..., if UPLO = 'L'. On exit, if JOB = 'P', the leading N*(N+1)/2 elements of this array contain the upper (if UPLO = 'U') or lower (if UPLO = 'L') triangle of the symmetric matrix A, packed column-wise, as described above.Further Comments
NoneExample
Program Text
NoneProgram Data
NoneProgram Results
None