MA02EZ

Store by (skew-)symmetry the upper or lower triangle of a (skew-)symmetric/Hermitian complex matrix, given the other triangle

[Specification] [Arguments] [Method] [References] [Comments] [Example]

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
  None
Example

Program Text

  None
Program Data
  None
Program Results
  None

Return to Supporting Routines index