# ztrexc (3) - Linux Man Pages

ztrexc.f -

## SYNOPSIS

### Functions/Subroutines

subroutine ztrexc (COMPQ, N, T, LDT, Q, LDQ, IFST, ILST, INFO)
ZTREXC

## Function/Subroutine Documentation

### subroutine ztrexc (characterCOMPQ, integerN, complex*16, dimension( ldt, * )T, integerLDT, complex*16, dimension( ldq, * )Q, integerLDQ, integerIFST, integerILST, integerINFO)

ZTREXC

Purpose:

``` ZTREXC reorders the Schur factorization of a complex matrix
A = Q*T*Q**H, so that the diagonal element of T with row index IFST
is moved to row ILST.

The Schur form T is reordered by a unitary similarity transformation
Z**H*T*Z, and optionally the matrix Q of Schur vectors is updated by
postmultplying it with Z.
```

Parameters:

COMPQ

```          COMPQ is CHARACTER*1
= 'V':  update the matrix Q of Schur vectors;
= 'N':  do not update Q.
```

N

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

T

```          T is COMPLEX*16 array, dimension (LDT,N)
On entry, the upper triangular matrix T.
On exit, the reordered upper triangular matrix.
```

LDT

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

Q

```          Q is COMPLEX*16 array, dimension (LDQ,N)
On entry, if COMPQ = 'V', the matrix Q of Schur vectors.
On exit, if COMPQ = 'V', Q has been postmultiplied by the
unitary transformation matrix Z which reorders T.
If COMPQ = 'N', Q is not referenced.
```

LDQ

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

IFST

```          IFST is INTEGER
```

ILST

```          ILST is INTEGER

Specify the reordering of the diagonal elements of T:
The element with row index IFST is moved to row ILST by a
sequence of transpositions between adjacent elements.
1 <= IFST <= N; 1 <= ILST <= N.
```

INFO

```          INFO is INTEGER
= 0:  successful exit
< 0:  if INFO = -i, the i-th argument had an illegal value
```

Author:

Univ. of Tennessee

Univ. of California Berkeley