# lapmr - Man Page

lapmr: permute rows

## Synopsis

### Functions

subroutine clapmr (forwrd, m, n, x, ldx, k)
CLAPMR rearranges rows of a matrix as specified by a permutation vector.
subroutine dlapmr (forwrd, m, n, x, ldx, k)
DLAPMR rearranges rows of a matrix as specified by a permutation vector.
subroutine slapmr (forwrd, m, n, x, ldx, k)
SLAPMR rearranges rows of a matrix as specified by a permutation vector.
subroutine zlapmr (forwrd, m, n, x, ldx, k)
ZLAPMR rearranges rows of a matrix as specified by a permutation vector.

## Function Documentation

### subroutine clapmr (logical forwrd, integer m, integer n, complex, dimension( ldx, * ) x, integer ldx, integer, dimension( * ) k)

CLAPMR rearranges rows of a matrix as specified by a permutation vector.

Purpose:

``` CLAPMR rearranges the rows of the M by N matrix X as specified
by the permutation K(1),K(2),...,K(M) of the integers 1,...,M.
If FORWRD = .TRUE.,  forward permutation:

X(K(I),*) is moved X(I,*) for I = 1,2,...,M.

If FORWRD = .FALSE., backward permutation:

X(I,*) is moved to X(K(I),*) for I = 1,2,...,M.```
Parameters

FORWRD

```          FORWRD is LOGICAL
= .TRUE., forward permutation
= .FALSE., backward permutation```

M

```          M is INTEGER
The number of rows of the matrix X. M >= 0.```

N

```          N is INTEGER
The number of columns of the matrix X. N >= 0.```

X

```          X is COMPLEX array, dimension (LDX,N)
On entry, the M by N matrix X.
On exit, X contains the permuted matrix X.```

LDX

```          LDX is INTEGER
The leading dimension of the array X, LDX >= MAX(1,M).```

K

```          K is INTEGER array, dimension (M)
On entry, K contains the permutation vector. K is used as
internal workspace, but reset to its original value on
output.```
Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 103 of file clapmr.f.

### subroutine dlapmr (logical forwrd, integer m, integer n, double precision, dimension( ldx, * ) x, integer ldx, integer, dimension( * ) k)

DLAPMR rearranges rows of a matrix as specified by a permutation vector.

Purpose:

``` DLAPMR rearranges the rows of the M by N matrix X as specified
by the permutation K(1),K(2),...,K(M) of the integers 1,...,M.
If FORWRD = .TRUE.,  forward permutation:

X(K(I),*) is moved X(I,*) for I = 1,2,...,M.

If FORWRD = .FALSE., backward permutation:

X(I,*) is moved to X(K(I),*) for I = 1,2,...,M.```
Parameters

FORWRD

```          FORWRD is LOGICAL
= .TRUE., forward permutation
= .FALSE., backward permutation```

M

```          M is INTEGER
The number of rows of the matrix X. M >= 0.```

N

```          N is INTEGER
The number of columns of the matrix X. N >= 0.```

X

```          X is DOUBLE PRECISION array, dimension (LDX,N)
On entry, the M by N matrix X.
On exit, X contains the permuted matrix X.```

LDX

```          LDX is INTEGER
The leading dimension of the array X, LDX >= MAX(1,M).```

K

```          K is INTEGER array, dimension (M)
On entry, K contains the permutation vector. K is used as
internal workspace, but reset to its original value on
output.```
Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 103 of file dlapmr.f.

### subroutine slapmr (logical forwrd, integer m, integer n, real, dimension( ldx, * ) x, integer ldx, integer, dimension( * ) k)

SLAPMR rearranges rows of a matrix as specified by a permutation vector.

Purpose:

``` SLAPMR rearranges the rows of the M by N matrix X as specified
by the permutation K(1),K(2),...,K(M) of the integers 1,...,M.
If FORWRD = .TRUE.,  forward permutation:

X(K(I),*) is moved X(I,*) for I = 1,2,...,M.

If FORWRD = .FALSE., backward permutation:

X(I,*) is moved to X(K(I),*) for I = 1,2,...,M.```
Parameters

FORWRD

```          FORWRD is LOGICAL
= .TRUE., forward permutation
= .FALSE., backward permutation```

M

```          M is INTEGER
The number of rows of the matrix X. M >= 0.```

N

```          N is INTEGER
The number of columns of the matrix X. N >= 0.```

X

```          X is REAL array, dimension (LDX,N)
On entry, the M by N matrix X.
On exit, X contains the permuted matrix X.```

LDX

```          LDX is INTEGER
The leading dimension of the array X, LDX >= MAX(1,M).```

K

```          K is INTEGER array, dimension (M)
On entry, K contains the permutation vector. K is used as
internal workspace, but reset to its original value on
output.```
Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 103 of file slapmr.f.

### subroutine zlapmr (logical forwrd, integer m, integer n, complex*16, dimension( ldx, * ) x, integer ldx, integer, dimension( * ) k)

ZLAPMR rearranges rows of a matrix as specified by a permutation vector.

Purpose:

``` ZLAPMR rearranges the rows of the M by N matrix X as specified
by the permutation K(1),K(2),...,K(M) of the integers 1,...,M.
If FORWRD = .TRUE.,  forward permutation:

X(K(I),*) is moved X(I,*) for I = 1,2,...,M.

If FORWRD = .FALSE., backward permutation:

X(I,*) is moved to X(K(I),*) for I = 1,2,...,M.```
Parameters

FORWRD

```          FORWRD is LOGICAL
= .TRUE., forward permutation
= .FALSE., backward permutation```

M

```          M is INTEGER
The number of rows of the matrix X. M >= 0.```

N

```          N is INTEGER
The number of columns of the matrix X. N >= 0.```

X

```          X is COMPLEX*16 array, dimension (LDX,N)
On entry, the M by N matrix X.
On exit, X contains the permuted matrix X.```

LDX

```          LDX is INTEGER
The leading dimension of the array X, LDX >= MAX(1,M).```

K

```          K is INTEGER array, dimension (M)
On entry, K contains the permutation vector. K is used as
internal workspace, but reset to its original value on
output.```
Author

Univ. of Tennessee

Univ. of California Berkeley