1DLAGS2(1) LAPACK auxiliary routine (version 3.2) DLAGS2(1)
2
3
4
6 DLAGS2 - computes 2-by-2 orthogonal matrices U, V and Q, such that if (
7 UPPER ) then U'*A*Q = U'*( A1 A2 )*Q = ( x 0 ) ( 0 A3 ) ( x x ) and
8 V'*B*Q = V'*( B1 B2 )*Q = ( x 0 ) ( 0 B3 ) ( x x ) or if ( .NOT.UPPER
9 ) then U'*A*Q = U'*( A1 0 )*Q = ( x x ) ( A2 A3 ) ( 0 x ) and
10 V'*B*Q = V'*( B1 0 )*Q = ( x x ) ( B2 B3 ) ( 0 x ) The rows of the
11 transformed A and B are parallel, where U = ( CSU SNU ), V = ( CSV
12 SNV ), Q = ( CSQ SNQ ) ( -SNU CSU ) ( -SNV CSV ) ( -SNQ CSQ ) Z'
13 denotes the transpose of Z
14
16 SUBROUTINE DLAGS2( UPPER, A1, A2, A3, B1, B2, B3, CSU, SNU, CSV, SNV,
17 CSQ, SNQ )
18
19 LOGICAL UPPER
20
21 DOUBLE PRECISION A1, A2, A3, B1, B2, B3, CSQ, CSU, CSV,
22 SNQ, SNU, SNV
23
25 DLAGS2 computes 2-by-2 orthogonal matrices U, V and Q, such that if (
26 UPPER ) then
27
29 UPPER (input) LOGICAL
30 = .TRUE.: the input matrices A and B are upper triangular.
31 = .FALSE.: the input matrices A and B are lower triangular.
32
33 A1 (input) DOUBLE PRECISION
34 A2 (input) DOUBLE PRECISION A3 (input) DOUBLE PRECI‐
35 SION On entry, A1, A2 and A3 are elements of the input 2-by-2
36 upper (lower) triangular matrix A.
37
38 B1 (input) DOUBLE PRECISION
39 B2 (input) DOUBLE PRECISION B3 (input) DOUBLE PRECI‐
40 SION On entry, B1, B2 and B3 are elements of the input 2-by-2
41 upper (lower) triangular matrix B.
42
43 CSU (output) DOUBLE PRECISION
44 SNU (output) DOUBLE PRECISION The desired orthogonal matrix
45 U.
46
47 CSV (output) DOUBLE PRECISION
48 SNV (output) DOUBLE PRECISION The desired orthogonal matrix
49 V.
50
51 CSQ (output) DOUBLE PRECISION
52 SNQ (output) DOUBLE PRECISION The desired orthogonal matrix
53 Q.
54
55
56
57 LAPACK auxiliary routine (versionNo3v.e2m)ber 2008 DLAGS2(1)