CLAGS2 (3) Linux Manual Page
clags2.f –
Synopsis
Functions/Subroutines
subroutine clags2 (UPPER, A1, A2, A3, B1, B2, B3, CSU, SNU, CSV, SNV, CSQ, SNQ)CLAGS2
Function/Subroutine Documentation
subroutine clags2 (logicalUPPER, realA1, complexA2, realA3, realB1, complexB2, realB3, realCSU, complexSNU, realCSV, complexSNV, realCSQ, complexSNQ)
CLAGS2 Purpose:
CLAGS2 computes 2-by-2 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 2-by-2 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.
Parameters:
- UPPER
UPPER is LOGICAL
A1
= .TRUE.: the input matrices A and B are upper triangular.
= .FALSE.: the input matrices A and B are lower triangular.A1 is REAL
A2A2 is COMPLEX
A3A3 is REAL
B1
On entry, A1, A2 and A3 are elements of the input 2-by-2
upper (lower) triangular matrix A.B1 is REAL
B2B2 is COMPLEX
B3B3 is REAL
CSU
On entry, B1, B2 and B3 are elements of the input 2-by-2
upper (lower) triangular matrix B.CSU is REAL
SNUSNU is COMPLEX
CSV
The desired unitary matrix U.CSV is REAL
SNVSNV is COMPLEX
CSQ
The desired unitary matrix V.CSQ is REAL
SNQSNQ is COMPLEX
The desired unitary matrix Q.
Author:
- Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Date:
- November 2011
Definition at line 158 of file clags2.f.
