# heswapr - Man Page

{he,sy}swapr: apply 2-sided permutation

## Synopsis

### Functions

subroutine cheswapr (uplo, n, a, lda, i1, i2)
CHESWAPR applies an elementary permutation on the rows and columns of a Hermitian matrix.
subroutine csyswapr (uplo, n, a, lda, i1, i2)
CSYSWAPR
subroutine dsyswapr (uplo, n, a, lda, i1, i2)
DSYSWAPR applies an elementary permutation on the rows and columns of a symmetric matrix.
subroutine ssyswapr (uplo, n, a, lda, i1, i2)
SSYSWAPR applies an elementary permutation on the rows and columns of a symmetric matrix.
subroutine zheswapr (uplo, n, a, lda, i1, i2)
ZHESWAPR applies an elementary permutation on the rows and columns of a Hermitian matrix.
subroutine zsyswapr (uplo, n, a, lda, i1, i2)
ZSYSWAPR

## Function Documentation

### subroutine cheswapr (character uplo, integer n, complex, dimension( lda, n ) a, integer lda, integer i1, integer i2)

CHESWAPR applies an elementary permutation on the rows and columns of a Hermitian matrix.

Purpose:

``` CHESWAPR applies an elementary permutation on the rows and the columns of
a hermitian matrix.```
Parameters

UPLO

```          UPLO is CHARACTER*1
Specifies whether the details of the factorization are stored
as an upper or lower triangular matrix.
= 'U':  Upper triangular, form is A = U*D*U**T;
= 'L':  Lower triangular, form is A = L*D*L**T.```

N

```          N is INTEGER
The order of the matrix A.  N >= 0.```

A

```          A is COMPLEX array, dimension (LDA,N)
On entry, the NB diagonal matrix D and the multipliers
used to obtain the factor U or L as computed by CSYTRF.

On exit, if INFO = 0, the (symmetric) inverse of the original
matrix.  If UPLO = 'U', the upper triangular part of the
inverse is formed and the part of A below the diagonal is not
referenced; if UPLO = 'L' the lower triangular part of the
inverse is formed and the part of A above the diagonal is
not referenced.```

LDA

```          LDA is INTEGER
The leading dimension of the array A.  LDA >= max(1,N).```

I1

```          I1 is INTEGER
Index of the first row to swap```

I2

```          I2 is INTEGER
Index of the second row to swap```
Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 101 of file cheswapr.f.

### subroutine csyswapr (character uplo, integer n, complex, dimension( lda, n ) a, integer lda, integer i1, integer i2)

CSYSWAPR

Purpose:

``` CSYSWAPR applies an elementary permutation on the rows and the columns of
a symmetric matrix.```
Parameters

UPLO

```          UPLO is CHARACTER*1
Specifies whether the details of the factorization are stored
as an upper or lower triangular matrix.
= 'U':  Upper triangular, form is A = U*D*U**T;
= 'L':  Lower triangular, form is A = L*D*L**T.```

N

```          N is INTEGER
The order of the matrix A.  N >= 0.```

A

```          A is COMPLEX array, dimension (LDA,N)
On entry, the N-by-N matrix A. On exit, the permuted matrix
where the rows I1 and I2 and columns I1 and I2 are interchanged.
If UPLO = 'U', the interchanges are applied to the upper
triangular part and the strictly lower triangular part of A is
not referenced; if UPLO = 'L', the interchanges are applied to
the lower triangular part and the part of A above the diagonal
is not referenced.```

LDA

```          LDA is INTEGER
The leading dimension of the array A.  LDA >= max(1,N).```

I1

```          I1 is INTEGER
Index of the first row to swap```

I2

```          I2 is INTEGER
Index of the second row to swap```
Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 99 of file csyswapr.f.

### subroutine dsyswapr (character uplo, integer n, double precision, dimension( lda, * ) a, integer lda, integer i1, integer i2)

DSYSWAPR applies an elementary permutation on the rows and columns of a symmetric matrix.

Purpose:

``` DSYSWAPR applies an elementary permutation on the rows and the columns of
a symmetric matrix.```
Parameters

UPLO

```          UPLO is CHARACTER*1
Specifies whether the details of the factorization are stored
as an upper or lower triangular matrix.
= 'U':  Upper triangular, form is A = U*D*U**T;
= 'L':  Lower triangular, form is A = L*D*L**T.```

N

```          N is INTEGER
The order of the matrix A.  N >= 0.```

A

```          A is DOUBLE PRECISION array, dimension (LDA,*)
On entry, the N-by-N matrix A. On exit, the permuted matrix
where the rows I1 and I2 and columns I1 and I2 are interchanged.
If UPLO = 'U', the interchanges are applied to the upper
triangular part and the strictly lower triangular part of A is
not referenced; if UPLO = 'L', the interchanges are applied to
the lower triangular part and the part of A above the diagonal
is not referenced.```

LDA

```          LDA is INTEGER
The leading dimension of the array A.  LDA >= max(1,N).```

I1

```          I1 is INTEGER
Index of the first row to swap```

I2

```          I2 is INTEGER
Index of the second row to swap```
Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 99 of file dsyswapr.f.

### subroutine ssyswapr (character uplo, integer n, real, dimension( lda, * ) a, integer lda, integer i1, integer i2)

SSYSWAPR applies an elementary permutation on the rows and columns of a symmetric matrix.

Purpose:

``` SSYSWAPR applies an elementary permutation on the rows and the columns of
a symmetric matrix.```
Parameters

UPLO

```          UPLO is CHARACTER*1
Specifies whether the details of the factorization are stored
as an upper or lower triangular matrix.
= 'U':  Upper triangular, form is A = U*D*U**T;
= 'L':  Lower triangular, form is A = L*D*L**T.```

N

```          N is INTEGER
The order of the matrix A.  N >= 0.```

A

```          A is REAL array, dimension (LDA,*)
On entry, the N-by-N matrix A. On exit, the permuted matrix
where the rows I1 and I2 and columns I1 and I2 are interchanged.
If UPLO = 'U', the interchanges are applied to the upper
triangular part and the strictly lower triangular part of A is
not referenced; if UPLO = 'L', the interchanges are applied to
the lower triangular part and the part of A above the diagonal
is not referenced.```

LDA

```          LDA is INTEGER
The leading dimension of the array A.  LDA >= max(1,N).```

I1

```          I1 is INTEGER
Index of the first row to swap```

I2

```          I2 is INTEGER
Index of the second row to swap```
Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 99 of file ssyswapr.f.

### subroutine zheswapr (character uplo, integer n, complex*16, dimension( lda, n ) a, integer lda, integer i1, integer i2)

ZHESWAPR applies an elementary permutation on the rows and columns of a Hermitian matrix.

Purpose:

``` ZHESWAPR applies an elementary permutation on the rows and the columns of
a hermitian matrix.```
Parameters

UPLO

```          UPLO is CHARACTER*1
Specifies whether the details of the factorization are stored
as an upper or lower triangular matrix.
= 'U':  Upper triangular, form is A = U*D*U**T;
= 'L':  Lower triangular, form is A = L*D*L**T.```

N

```          N is INTEGER
The order of the matrix A.  N >= 0.```

A

```          A is COMPLEX*16 array, dimension (LDA,N)
On entry, the NB diagonal matrix D and the multipliers
used to obtain the factor U or L as computed by CSYTRF.

On exit, if INFO = 0, the (symmetric) inverse of the original
matrix.  If UPLO = 'U', the upper triangular part of the
inverse is formed and the part of A below the diagonal is not
referenced; if UPLO = 'L' the lower triangular part of the
inverse is formed and the part of A above the diagonal is
not referenced.```

LDA

```          LDA is INTEGER
The leading dimension of the array A.  LDA >= max(1,N).```

I1

```          I1 is INTEGER
Index of the first row to swap```

I2

```          I2 is INTEGER
Index of the second row to swap```
Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 101 of file zheswapr.f.

### subroutine zsyswapr (character uplo, integer n, complex*16, dimension( lda, * ) a, integer lda, integer i1, integer i2)

ZSYSWAPR

Purpose:

``` ZSYSWAPR applies an elementary permutation on the rows and the columns of
a symmetric matrix.```
Parameters

UPLO

```          UPLO is CHARACTER*1
Specifies whether the details of the factorization are stored
as an upper or lower triangular matrix.
= 'U':  Upper triangular, form is A = U*D*U**T;
= 'L':  Lower triangular, form is A = L*D*L**T.```

N

```          N is INTEGER
The order of the matrix A.  N >= 0.```

A

```          A is COMPLEX*16 array, dimension (LDA,*)
On entry, the N-by-N matrix A. On exit, the permuted matrix
where the rows I1 and I2 and columns I1 and I2 are interchanged.
If UPLO = 'U', the interchanges are applied to the upper
triangular part and the strictly lower triangular part of A is
not referenced; if UPLO = 'L', the interchanges are applied to
the lower triangular part and the part of A above the diagonal
is not referenced.```

LDA

```          LDA is INTEGER
The leading dimension of the array A.  LDA >= max(1,N).```

I1

```          I1 is INTEGER
Index of the first row to swap```

I2

```          I2 is INTEGER
Index of the second row to swap```
Author

Univ. of Tennessee

Univ. of California Berkeley