Previous: dlag2 Up: ../lapack-d.html Next: dlagtf
NAME DLAGS2 - compute 2-by-2 orthogonal 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 ) The rows of the transformed A and B are parallel, where U = ( CSU SNU ), V = ( CSV SNV ), Q = ( CSQ SNQ ) ( -SNU CSU ) ( -SNV CSV ) ( -SNQ CSQ ) Z' denotes the transpose of Z SYNOPSIS SUBROUTINE DLAGS2( UPPER, A1, A2, A3, B1, B2, B3, CSU, SNU, CSV, SNV, CSQ, SNQ ) LOGICAL UPPER DOUBLE PRECISION A1, A2, A3, B1, B2, B3, CSQ, CSU, CSV, SNQ, SNU, SNV PURPOSE DLAGS2 computes 2-by-2 orthogonal matrices U, V and Q, such that if ( UPPER ) then ARGUMENTS UPPER (input) LOGICAL = .TRUE.: the input matrices A and B are upper tri- angular. = .FALSE.: the input matrices A and B are lower tri- angular. A1 (input) DOUBLE PRECISION A2 (input) DOUBLE PRECISION A3 (input) DOUBLE PRECISION On entry, A1, A2 and A3 are entries of the input 2-by-2 upper (lower) triangular matrix A. B1 (input) DOUBLE PRECISION B2 (input) DOUBLE PRECISION B3 (input) DOUBLE PRECISION On entry, B1, B2 and B3 are entries of the input 2-by-2 upper (lower) triangular matrix B. CSU (output) DOUBLE PRECISION SNU (output) DOUBLE PRECISION The desired orthogonal matrix U. CSV (output) DOUBLE PRECISION SNV (output) DOUBLE PRECISION The desired orthogonal matrix V. CSQ (output) DOUBLE PRECISION SNQ (output) DOUBLE PRECISION The desired orthogonal matrix Q.