Loading...
Searching...
No Matches

## dlagv2()

subroutine dlagv2 | ( | double precision, dimension( lda, * ) | a,
|  | integer | lda,
|  | double precision, dimension( ldb, * ) | b,
|  | integer | ldb,
|  | double precision, dimension( 2 ) | alphar,
|  | double precision, dimension( 2 ) | alphai,
|  | double precision, dimension( 2 ) | beta,
|  | double precision | csl,
|  | double precision | snl,
|  | double precision | csr,
|  | double precision | snr )

DLAGV2 computes the Generalized Schur factorization of a real 2-by-2 matrix pencil (A,B) where B is upper triangular.

Download DLAGV2 + dependencies [TGZ] [ZIP] [TXT]

Purpose:

      !>
      !> DLAGV2 computes the Generalized Schur factorization of a real 2-by-2
      !> matrix pencil (A,B) where B is upper triangular. This routine
      !> computes orthogonal (rotation) matrices given by CSL, SNL and CSR,
      !> SNR such that
      !>
      !> 1) if the pencil (A,B) has two real eigenvalues (include 0/0 or 1/0
      !>    types), then
      !>
      !>    [ a11 a12 ] := [  CSL  SNL ] [ a11 a12 ] [  CSR -SNR ]
      !>    [  0  a22 ]    [ -SNL  CSL ] [ a21 a22 ] [  SNR  CSR ]
      !>
      !>    [ b11 b12 ] := [  CSL  SNL ] [ b11 b12 ] [  CSR -SNR ]
      !>    [  0  b22 ]    [ -SNL  CSL ] [  0  b22 ] [  SNR  CSR ],
      !>
      !> 2) if the pencil (A,B) has a pair of complex conjugate eigenvalues,
      !>    then
      !>
      !>    [ a11 a12 ] := [  CSL  SNL ] [ a11 a12 ] [  CSR -SNR ]
      !>    [ a21 a22 ]    [ -SNL  CSL ] [ a21 a22 ] [  SNR  CSR ]
      !>
      !>    [ b11  0  ] := [  CSL  SNL ] [ b11 b12 ] [  CSR -SNR ]
      !>    [  0  b22 ]    [ -SNL  CSL ] [  0  b22 ] [  SNR  CSR ]
      !>
      !>    where b11 >= b22 > 0.
      !>
      !>

Parameters

  [in,out]

  A

      !>          A is DOUBLE PRECISION array, dimension (LDA, 2)
      !>          On entry, the 2 x 2 matrix A.
      !>          On exit, A is overwritten by the ``A-part'' of the
      !>          generalized Schur form.
      !>

  [in]

  LDA

      !>          LDA is INTEGER
      !>          THe leading dimension of the array A.  LDA >= 2.
      !>

  [in,out]

  B

      !>          B is DOUBLE PRECISION array, dimension (LDB, 2)
      !>          On entry, the upper triangular 2 x 2 matrix B.
      !>          On exit, B is overwritten by the ``B-part'' of the
      !>          generalized Schur form.
      !>

  [in]

  LDB

      !>          LDB is INTEGER
      !>          THe leading dimension of the array B.  LDB >= 2.
      !>

  [out]

  ALPHAR

      !>          ALPHAR is DOUBLE PRECISION array, dimension (2)
      !>

  [out]

  ALPHAI

      !>          ALPHAI is DOUBLE PRECISION array, dimension (2)
      !>

  [out]

  BETA

      !>          BETA is DOUBLE PRECISION array, dimension (2)
      !>          (ALPHAR(k)+i*ALPHAI(k))/BETA(k) are the eigenvalues of the
      !>          pencil (A,B), k=1,2, i = sqrt(-1).  Note that BETA(k) may
      !>          be zero.
      !>

  [out]

  CSL

      !>          CSL is DOUBLE PRECISION
      !>          The cosine of the left rotation matrix.
      !>

  [out]

  SNL

      !>          SNL is DOUBLE PRECISION
      !>          The sine of the left rotation matrix.
      !>

  [out]

  CSR

      !>          CSR is DOUBLE PRECISION
      !>          The cosine of the right rotation matrix.
      !>

  [out]

  SNR

      !>          SNR is DOUBLE PRECISION
      !>          The sine of the right rotation matrix.
      !>

Author
  Univ. of Tennessee
  Univ. of California Berkeley
  Univ. of Colorado Denver
  NAG Ltd.

Contributors:
  Mark Fahey, Department of Mathematics, Univ. of Kentucky, USA