LAPACK
3.4.2
LAPACK: Linear Algebra PACKage

Go to the source code of this file.
Functions/Subroutines  
subroutine  clags2 (UPPER, A1, A2, A3, B1, B2, B3, CSU, SNU, CSV, SNV, CSQ, SNQ) 
CLAGS2 
subroutine clags2  (  logical  UPPER, 
real  A1,  
complex  A2,  
real  A3,  
real  B1,  
complex  B2,  
real  B3,  
real  CSU,  
complex  SNU,  
real  CSV,  
complex  SNV,  
real  CSQ,  
complex  SNQ  
) 
CLAGS2
Download CLAGS2 + dependencies [TGZ] [ZIP] [TXT]CLAGS2 computes 2by2 unitary matrices U, V and Q, such that if ( UPPER ) then U**H *A*Q = U**H *( A1 A2 )*Q = ( x 0 ) ( 0 A3 ) ( x x ) and V**H*B*Q = V**H *( B1 B2 )*Q = ( x 0 ) ( 0 B3 ) ( x x ) or if ( .NOT.UPPER ) then U**H *A*Q = U**H *( A1 0 )*Q = ( x x ) ( A2 A3 ) ( 0 x ) and V**H *B*Q = V**H *( B1 0 )*Q = ( x x ) ( B2 B3 ) ( 0 x ) where U = ( CSU SNU ), V = ( CSV SNV ), ( SNU**H CSU ) ( SNV**H CSV ) Q = ( CSQ SNQ ) ( SNQ**H CSQ ) The rows of the transformed A and B are parallel. Moreover, if the input 2by2 matrix A is not zero, then the transformed (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 parallel and the second rows are zero.
[in]  UPPER  UPPER is LOGICAL = .TRUE.: the input matrices A and B are upper triangular. = .FALSE.: the input matrices A and B are lower triangular. 
[in]  A1  A1 is REAL 
[in]  A2  A2 is COMPLEX 
[in]  A3  A3 is REAL On entry, A1, A2 and A3 are elements of the input 2by2 upper (lower) triangular matrix A. 
[in]  B1  B1 is REAL 
[in]  B2  B2 is COMPLEX 
[in]  B3  B3 is REAL On entry, B1, B2 and B3 are elements of the input 2by2 upper (lower) triangular matrix B. 
[out]  CSU  CSU is REAL 
[out]  SNU  SNU is COMPLEX The desired unitary matrix U. 
[out]  CSV  CSV is REAL 
[out]  SNV  SNV is COMPLEX The desired unitary matrix V. 
[out]  CSQ  CSQ is REAL 
[out]  SNQ  SNQ is COMPLEX The desired unitary matrix Q. 
Definition at line 158 of file clags2.f.