zlags2(3)
NAME
- ZLAGS2 - compute 2-by-2 unitary matrices U, V and Q, such
- that if ( UPPER ) then U'*A*Q = U'*( A1 A2 )*Q = ( x 0 ) ( 0 A3
- ) ( x x ) and V'*B*Q = V'*( B1 B2 )*Q = ( x 0 ) ( 0 B3 ) ( x x )
- or if ( .NOT.UPPER ) then U'*A*Q = U'*( A1 0 )*Q = ( x x ) ( A2
- A3 ) ( 0 x ) and V'*B*Q = V'*( B1 0 )*Q = ( x x ) ( B2 B3 ) ( 0 x
- ) where U = ( CSU SNU ), V = ( CSV SNV ),
SYNOPSIS
SUBROUTINE ZLAGS2( UPPER, A1, A2, A3, B1, B2, B3, CSU,
SNU, CSV, SNV, CSQ, SNQ )
LOGICAL UPPER
DOUBLE PRECISION A1, A3, B1, B3, CSQ, CSU, CSV
COMPLEX*16 A2, B2, SNQ, SNU, SNV
PURPOSE
- ZLAGS2 computes 2-by-2 unitary matrices U, V and Q, such
- that if ( UPPER ) then U'*A*Q = U'*( A1 A2 )*Q = ( x 0 ) ( 0 A3 )
- ( x x ) and V'*B*Q = V'*( B1 B2 )*Q = ( x 0 ) ( 0 B3 ) ( x x ) or
- if ( .NOT.UPPER ) then U'*A*Q = U'*( A1 0 )*Q = ( x x ) ( A2 A3 )
- ( 0 x ) and V'*B*Q = V'*( B1 0 )*Q = ( x x ) ( B2 B3 ) ( 0 x )
- where U = ( CSU SNU ), V = ( CSV SNV ), ( -CONJG(SNU) CSU
- ) ( -CONJG(SNV) CSV )
Q = ( CSQ SNQ )
( -CONJG(SNQ) CSQ )
- Z' denotes the conjugate transpose of Z.
- The rows of the transformed A and B are parallel. More
- over, if the input 2-by-2 matrix A is not zero, then the trans
- formed (1,1) entry of A is not zero. If the input matrices A and
- B are both not zero, then the transformed (2,2) element of B is
- not zero, except when the first rows of input A and B are paral
- lel and the second rows are zero.
ARGUMENTS
- UPPER (input) LOGICAL
- = .TRUE.: the input matrices A and B are upper
- triangular.
= .FALSE.: the input matrices A and B are lower
- triangular.
- A1 (input) DOUBLE PRECISION
- A2 (input) COMPLEX*16 A3 (input) DOUBLE
- PRECISION On entry, A1, A2 and A3 are elements of the input
- 2-by-2 upper (lower) triangular matrix A.
- B1 (input) DOUBLE PRECISION
- B2 (input) COMPLEX*16 B3 (input) DOUBLE
- PRECISION On entry, B1, B2 and B3 are elements of the input
- 2-by-2 upper (lower) triangular matrix B.
- CSU (output) DOUBLE PRECISION
- SNU (output) COMPLEX*16 The desired unitary
- matrix U.
- CSV (output) DOUBLE PRECISION
- SNV (output) COMPLEX*16 The desired unitary
- matrix V.
- CSQ (output) DOUBLE PRECISION
- SNQ (output) COMPLEX*16 The desired unitary
- matrix Q.
- LAPACK version 3.0 15 June 2000