dlaexc (l) - Linux Manuals
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
Command to display dlaexc
manual in Linux: $ man l dlaexc
NAME
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
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
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.
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.
Pages related to dlaexc
- dlaexc (3)
- dlae2 (l) - computes the eigenvalues of a 2-by-2 symmetric matrix [ A B ] [ B C ]
- dlaebz (l) - contains the iteration loops which compute and use the function N(w), which is the count of eigenvalues of a symmetric tridiagonal matrix T less than or equal to its argument w
- dlaed0 (l) - computes all eigenvalues and corresponding eigenvectors of a symmetric tridiagonal matrix using the divide and conquer method
- dlaed1 (l) - computes the updated eigensystem of a diagonal matrix after modification by a rank-one symmetric matrix
- dlaed2 (l) - merges the two sets of eigenvalues together into a single sorted set
- dlaed3 (l) - finds the roots of the secular equation, as defined by the values in D, W, and RHO, between 1 and K
- dlaed4 (l) - subroutine compute the I-th updated eigenvalue of a symmetric rank-one modification to a diagonal matrix whose elements are given in the array d, and that D(i) < D(j) for i < j and that RHO > 0
- dlaed5 (l) - subroutine compute the I-th eigenvalue of a symmetric rank-one modification of a 2-by-2 diagonal matrix diag( D ) + RHO The diagonal elements in the array D are assumed to satisfy D(i) < D(j) for i < j
- dlaed6 (l) - computes the positive or negative root (closest to the origin) of z(1) z(2) z(3) f(x) = rho + --------- + ---------- + --------- d(1)-x d(2)-x d(3)-x It is assumed that if ORGATI = .true