DHST01
   Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd..
November 2006
November 2006
Purpose
DHST01 tests the reduction of a general matrix A to upper Hessenberg
form: A = Q*H*Q'. Two test ratios are computed;
RESULT(1) = norm( A - Q*H*Q' ) / ( norm(A) * N * EPS )
RESULT(2) = norm( I - Q'*Q ) / ( N * EPS )
The matrix Q is assumed to be given explicitly as it would be
following DGEHRD + DORGHR.
In this version, ILO and IHI are not used and are assumed to be 1 and
N, respectively.
form: A = Q*H*Q'. Two test ratios are computed;
RESULT(1) = norm( A - Q*H*Q' ) / ( norm(A) * N * EPS )
RESULT(2) = norm( I - Q'*Q ) / ( N * EPS )
The matrix Q is assumed to be given explicitly as it would be
following DGEHRD + DORGHR.
In this version, ILO and IHI are not used and are assumed to be 1 and
N, respectively.
Arguments
| N | 
 
(input) INTEGER
 
The order of the matrix A.  N >= 0. 
 | 
| ILO | 
 
(input) INTEGER
 
 | 
| IHI | 
 
(input) INTEGER
 
A is assumed to be upper triangular in rows and columns 
1:ILO-1 and IHI+1:N, so Q differs from the identity only in rows and columns ILO+1:IHI.  | 
| A | 
 
(input) DOUBLE PRECISION array, dimension (LDA,N)
 
The original n by n matrix A. 
 | 
| LDA | 
 
(input) INTEGER
 
The leading dimension of the array A.  LDA >= max(1,N). 
 | 
| H | 
 
(input) DOUBLE PRECISION array, dimension (LDH,N)
 
The upper Hessenberg matrix H from the reduction A = Q*H*Q' 
as computed by DGEHRD. H is assumed to be zero below the first subdiagonal.  | 
| LDH | 
 
(input) INTEGER
 
The leading dimension of the array H.  LDH >= max(1,N). 
 | 
| Q | 
 
(input) DOUBLE PRECISION array, dimension (LDQ,N)
 
The orthogonal matrix Q from the reduction A = Q*H*Q' as 
computed by DGEHRD + DORGHR.  | 
| LDQ | 
 
(input) INTEGER
 
The leading dimension of the array Q.  LDQ >= max(1,N). 
 | 
| WORK | 
 
(workspace) DOUBLE PRECISION array, dimension (LWORK)
 
 | 
| LWORK | 
 
(input) INTEGER
 
The length of the array WORK.  LWORK >= 2*N*N. 
 | 
| RESULT | 
 
(output) DOUBLE PRECISION array, dimension (2)
 
RESULT(1) = norm( A - Q*H*Q' ) / ( norm(A) * N * EPS ) 
RESULT(2) = norm( I - Q'*Q ) / ( N * EPS )  |