dlaexc.f(3)

NAME
dlaexc.f -

SYNOPSIS

  Functions/Subroutines

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

Function/Subroutine Documentation

  subroutine dlaexc (logicalWANTQ, integerN, double precision, dimension( ldt, * )T, integerLDT, double precision, dimension( ldq, * )Q, integerLDQ, integerJ1, integerN1, integerN2, double precision, dimension( * )WORK, integerINFO)

DLAEXC swaps adjacent diagonal blocks of a real upper quasi-triangular matrix in Schur canonical form, by an orthogonal similarity transformation.

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
     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 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

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

    Q

              Q is 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

              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 DOUBLE PRECISION 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

    Univ. of Colorado Denver

    NAG Ltd.

Date:
    September 2012

Definition at line 138 of file dlaexc.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.