1SLAEXC(1)           LAPACK auxiliary routine (version 3.1)           SLAEXC(1)
2
3
4

NAME

6       SLAEXC  -  adjacent  diagonal  blocks T11 and T22 of order 1 or 2 in an
7       upper quasi-triangular matrix T by an orthogonal similarity transforma‐
8       tion
9

SYNOPSIS

11       SUBROUTINE SLAEXC( WANTQ, N, T, LDT, Q, LDQ, J1, N1, N2, WORK, INFO )
12
13           LOGICAL        WANTQ
14
15           INTEGER        INFO, J1, LDQ, LDT, N, N1, N2
16
17           REAL           Q( LDQ, * ), T( LDT, * ), WORK( * )
18

PURPOSE

20       SLAEXC swaps adjacent diagonal blocks T11 and T22 of order 1 or 2 in an
21       upper quasi-triangular matrix T by an orthogonal similarity transforma‐
22       tion.
23
24       T must be in Schur canonical form, that is, block upper triangular with
25       1-by-1 and 2-by-2 diagonal blocks; each 2-by-2 diagonal block  has  its
26       diagonal elemnts equal and its off-diagonal elements of opposite sign.
27
28

ARGUMENTS

30       WANTQ   (input) LOGICAL
31               = .TRUE. : accumulate the transformation in the matrix Q;
32               = .FALSE.: do not accumulate the transformation.
33
34       N       (input) INTEGER
35               The order of the matrix T. N >= 0.
36
37       T       (input/output) REAL array, dimension (LDT,N)
38               On entry, the upper quasi-triangular matrix T, in Schur canoni‐
39               cal form.  On exit, the updated matrix T, again in Schur canon‐
40               ical form.
41
42       LDT     (input)  INTEGER
43               The leading dimension of the array T. LDT >= max(1,N).
44
45       Q       (input/output) REAL array, dimension (LDQ,N)
46               On  entry,  if  WANTQ  is  .TRUE., the orthogonal matrix Q.  On
47               exit, if WANTQ is .TRUE., the updated matrix Q.   If  WANTQ  is
48               .FALSE., Q is not referenced.
49
50       LDQ     (input) INTEGER
51               The  leading  dimension of the array Q.  LDQ >= 1; and if WANTQ
52               is .TRUE., LDQ >= N.
53
54       J1      (input) INTEGER
55               The index of the first row of the first block T11.
56
57       N1      (input) INTEGER
58               The order of the first block T11. N1 = 0, 1 or 2.
59
60       N2      (input) INTEGER
61               The order of the second block T22. N2 = 0, 1 or 2.
62
63       WORK    (workspace) REAL array, dimension (N)
64
65       INFO    (output) INTEGER
66               = 0: successful exit
67               = 1: the transformed matrix T would be too far from Schur form;
68               the blocks are not swapped and T and Q are unchanged.
69
70
71
72 LAPACK auxiliary routine (versionNo3v.e1m)ber 2006                       SLAEXC(1)
Impressum