table of contents
| laexc(3) | Library Functions Manual | laexc(3) |
NAME¶
laexc - laexc: reorder Schur form
SYNOPSIS¶
Functions¶
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.
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.
Detailed Description¶
Function Documentation¶
subroutine DLAEXC (logical wantq, integer n, double precision, dimension( ldt, * ) t, integer ldt, double precision, dimension( ldq, * ) q, integer ldq, integer j1, integer n1, integer n2, double precision, dimension( * ) work, integer info)¶
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 elements equal and its off-diagonal elements of !> opposite sign. !>
Parameters
!> 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 California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Definition at line 136 of file dlaexc.f.
subroutine SLAEXC (logical wantq, integer n, real, dimension( ldt, * ) t, integer ldt, real, dimension( ldq, * ) q, integer ldq, integer j1, integer n1, integer n2, real, dimension( * ) work, integer info)¶
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 elements equal and its off-diagonal elements of !> opposite sign. !>
Parameters
!> 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 California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Definition at line 136 of file slaexc.f.
Author¶
Generated automatically by Doxygen for LAPACK from the source code.
| Version 3.12.0 | LAPACK |