Purpose
To store by (skew-)symmetry the upper or lower triangle of a (skew-)symmetric/Hermitian complex matrix, given the other triangle.Specification
SUBROUTINE MA02EZ( UPLO, TRANS, SKEW, N, A, LDA ) C .. Scalar Arguments .. CHARACTER SKEW, TRANS, UPLO INTEGER LDA, N C .. Array Arguments .. COMPLEX*16 A(LDA,*)Arguments
Mode Parameters
UPLO CHARACTER*1 Specifies which part of the matrix is given as follows: = 'U': Upper triangular part; = 'L': Lower triangular part. For all other values, the array A is not referenced. TRANS CHARACTER*1 Specifies whether to use transposition or conjugate transposition as follows: = 'T': Use transposition; = 'C': Use conjugate transposition. SKEW CHARACTER*1 Specifies whether the matrix is symmetric/Hermitian or skew-symmetric/Hermitian as follows: = 'N': The matrix is symmetric/Hermitian; = 'S': The matrix is skew-symmetric/Hermitian.Input/Output Parameters
N (input) INTEGER The order of the matrix A. N >= 0. A (input/output) COMPLEX*16 array, dimension (LDA,N) On entry, 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 (skew-)symmetric/Hermitian matrix A. On exit, the leading N-by-N part of this array contains the (skew-)symmetric/Hermitian matrix A with all elements stored. If the resulted matrix should be Hermitian, the imaginary parts of the diagonal entries are set to zero. If the resulted matrix should be skew-Hermitian, the real parts of the diagonal entries are set to zero. LDA INTEGER The leading dimension of the array A. LDA >= max(1,N).Further Comments
NoneExample
Program Text
NoneProgram Data
NoneProgram Results
None