# slaexc.f(3) [centos man page]

```slaexc.f(3)							      LAPACK							       slaexc.f(3)

NAME
slaexc.f -

SYNOPSIS
Functions/Subroutines
subroutine slaexc (WANTQ, N, T, LDT, Q, LDQ, J1, N1, N2, WORK, INFO)
SLAEXC swaps adjacent diagonal blocks of a real upper quasi-triangular matrix in Schur canonical form, by an orthogonal similarity
transformation.

Function/Subroutine Documentation
subroutine slaexc (logicalWANTQ, integerN, real, dimension( ldt, * )T, integerLDT, real, dimension( ldq, * )Q, integerLDQ, integerJ1,
integerN1, integerN2, real, dimension( * )WORK, integerINFO)
SLAEXC swaps adjacent diagonal blocks of a real upper quasi-triangular matrix in Schur canonical form, by an orthogonal similarity
transformation.

Purpose:

SLAEXC swaps adjacent diagonal blocks T11 and T22 of order 1 or 2 in
an upper quasi-triangular matrix T by an orthogonal similarity
transformation.

T must be in Schur canonical form, that is, block upper triangular
with 1-by-1 and 2-by-2 diagonal blocks; each 2-by-2 diagonal block
has its diagonal elemnts equal and its off-diagonal elements of
opposite sign.

Parameters:
WANTQ

WANTQ is LOGICAL
= .TRUE. : accumulate the transformation in the matrix Q;
= .FALSE.: do not accumulate the transformation.

N

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

T

T is REAL array, dimension (LDT,N)
On entry, the upper quasi-triangular matrix T, in Schur
canonical form.
On exit, the updated matrix T, again in Schur canonical form.

LDT

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

Q

Q is REAL array, dimension (LDQ,N)
On entry, if WANTQ is .TRUE., the orthogonal matrix Q.
On exit, if WANTQ is .TRUE., the updated matrix Q.
If WANTQ is .FALSE., Q is not referenced.

LDQ

LDQ is INTEGER
The leading dimension of the array Q.
LDQ >= 1; and if WANTQ is .TRUE., LDQ >= N.

J1

J1 is INTEGER
The index of the first row of the first block T11.

N1

N1 is INTEGER
The order of the first block T11. N1 = 0, 1 or 2.

N2

N2 is INTEGER
The order of the second block T22. N2 = 0, 1 or 2.

WORK

WORK is REAL array, dimension (N)

INFO

INFO is INTEGER
= 0: successful exit
= 1: the transformed matrix T would be too far from Schur
form; the blocks are not swapped and T and Q are
unchanged.

Author:
Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Date:
September 2012

Definition at line 138 of file slaexc.f.

Author
Generated automatically by Doxygen for LAPACK from the source code.

Version 3.4.2							  Tue Sep 25 2012						       slaexc.f(3)```

## Check Out this Related Man Page

```DLAEXC(l)								 )								 DLAEXC(l)

NAME
DLAEXC - swap adjacent diagonal blocks T11 and T22 of order 1 or 2 in an upper quasi-triangular matrix T by an orthogonal similarity trans-
formation

SYNOPSIS
SUBROUTINE DLAEXC( WANTQ, N, T, LDT, Q, LDQ, J1, N1, N2, WORK, INFO )

LOGICAL	  WANTQ

INTEGER	  INFO, J1, LDQ, LDT, N, N1, N2

DOUBLE	  PRECISION Q( LDQ, * ), T( LDT, * ), WORK( * )

PURPOSE
DLAEXC swaps adjacent diagonal blocks T11 and T22 of order 1 or 2 in an upper quasi-triangular matrix T by an orthogonal similarity  trans-
formation.  T must be in Schur canonical form, that is, block upper triangular with 1-by-1 and 2-by-2 diagonal blocks; each 2-by-2 diagonal
block has its diagonal elemnts equal and its off-diagonal elements of opposite sign.

ARGUMENTS
WANTQ   (input) LOGICAL
= .TRUE. : accumulate the transformation in the matrix Q;
= .FALSE.: do not accumulate the transformation.

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

T       (input/output) DOUBLE PRECISION array, dimension (LDT,N)
On entry, the upper quasi-triangular matrix T, in Schur canonical form.	On exit, the updated matrix T, again  in  Schur  canonical
form.

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

Q       (input/output) DOUBLE PRECISION array, dimension (LDQ,N)
On  entry, if WANTQ is .TRUE., the orthogonal matrix Q.	On exit, if WANTQ is .TRUE., the updated matrix Q.  If WANTQ is .FALSE., Q
is not referenced.

LDQ     (input) INTEGER
The leading dimension of the array Q.  LDQ >= 1; and if WANTQ is .TRUE., LDQ >= N.

J1      (input) INTEGER
The index of the first row of the first block T11.

N1      (input) INTEGER
The order of the first block T11. N1 = 0, 1 or 2.

N2      (input) INTEGER
The order of the second block T22. N2 = 0, 1 or 2.

WORK    (workspace) DOUBLE PRECISION array, dimension (N)

INFO    (output) INTEGER
= 0: successful exit
= 1: the transformed matrix T would be too far from Schur form; the blocks are not swapped and T and Q are unchanged.

LAPACK version 3.0						   15 June 2000 							 DLAEXC(l)```
Man Page