CTREXC(l)		LAPACK routine (version	1.1)		    CTREXC(l)

NAME
  CTREXC - reorder 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

SYNOPSIS

  SUBROUTINE CTREXC( COMPQ, N, T, LDT, Q, LDQ, IFST, ILST, INFO	)

      CHARACTER	     COMPQ

      INTEGER	     IFST, ILST, INFO, LDQ, LDT, N

      COMPLEX	     Q(	LDQ, * ), T( LDT, * )

PURPOSE
  CTREXC 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 post-
  multplying it	with Z.

ARGUMENTS

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

  N	  (input) INTEGER
	  The order of the matrix T. N >= 0.

  T	  (input/output) COMPLEX array,	dimension (LDT,N)
	  On entry, the	upper triangular matrix	T.  On exit, the reordered
	  upper	triangular matrix.

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

  Q	  (input/output) COMPLEX 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 transfor-
	  mation matrix	Z which	reorders T.  If	COMPQ =	'N', Q is not refer-
	  enced.

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

  IFST	  (input) INTEGER
	  ILST	  (input) INTEGER Specify the reordering of the	diagonal ele-
	  ments	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	  (output) INTEGER
	  = 0:	successful exit
	  < 0:	if INFO	= -i, the i-th argument	had an illegal value


Back to the listing of computational routines for eigenvalue problems