Purpose
To permute two specified rows and corresponding columns of a (skew-)symmetric/Hermitian complex matrix.Specification
SUBROUTINE MA02NZ( UPLO, TRANS, SKEW, N, K, L, A, LDA ) C .. Scalar Arguments .. CHARACTER SKEW, TRANS, UPLO INTEGER K, L, LDA, N C .. Array Arguments .. COMPLEX*16 A(LDA,*)Arguments
Mode Parameters
UPLO CHARACTER*1 Specifies whether the upper or lower triangular part of the (skew-)symmetric/Hermitian matrix A is to be referenced, as follows: = 'U': Upper triangular part of A is referenced; = 'L': Lower triangular part of A is 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/skew-Hermitian.Input/Output Parameters
N (input) INTEGER The order of the matrix A. N >= 0. K (input) INTEGER The smaller index of the pair of rows and columns to be permuted. 0 <= K <= L. If K = 0, the routine returns. L (input) INTEGER The larger index of the pair of rows and columns to be permuted. K <= L <= N. 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 upper or lower triangular part of this array (depending on UPLO) contains the corresponding part of the permuted matrix A. Note that a Hermitian matrix has the imaginary parts of the diagonal entries zero. Similarly, a skew-Hermitian matrix has the real parts of the diagonal entries zero. The routine does not check out this conditions. LDA INTEGER The leading dimension of the array A. LDA >= max(N,1).Further Comments
NoneExample
Program Text
NoneProgram Data
NoneProgram Results
None