SUBROUTINE ZLAPMT( FORWRD, M, N, X, LDX, K ) LOGICAL FORWRD INTEGER LDX, M, N INTEGER K( * ) COMPLEX*16 X( LDX, * )
ZLAPMT rearranges the columns of the M by N matrix X as specified by the permutation K(1),K(2),...,K(N) of the integers 1,...,N. If FORWRD = .TRUE., forward permutation: X(*,K(J)) is moved X(*,J) for J = 1,2,...,N. If FORWRD = .FALSE., backward permutation: X(*,J) is moved to X(*,K(J)) for J = 1,2,...,N.
FORWRD (input) LOGICAL = .TRUE., forward permutation = .FALSE., backward permutation M (input) INTEGER The number of rows of the matrix X. M >= 0. N (input) INTEGER The number of columns of the matrix X. N >= 0. X (input/output) COMPLEX*16 array, dimension (LDX,N) On entry, the M by N matrix X. On exit, X contains the permuted matrix X. LDX (input) INTEGER The leading dimension of the array X, LDX >= MAX(1,M). K (input) INTEGER array, dimension (N) On entry, K contains the permutation vector.