1DLAHRD(1)           LAPACK auxiliary routine (version 3.1)           DLAHRD(1)
2
3
4

NAME

6       DLAHRD  -  the first NB columns of a real general n-by-(n-k+1) matrix A
7       so that elements below the k-th subdiagonal are zero
8

SYNOPSIS

10       SUBROUTINE DLAHRD( N, K, NB, A, LDA, TAU, T, LDT, Y, LDY )
11
12           INTEGER        K, LDA, LDT, LDY, N, NB
13
14           DOUBLE         PRECISION A( LDA, * ), T( LDT, NB ), TAU( NB  ),  Y(
15                          LDY, NB )
16

PURPOSE

18       DLAHRD  reduces  the  first  NB  columns of a real general n-by-(n-k+1)
19       matrix A so that elements below the  k-th  subdiagonal  are  zero.  The
20       reduction  is performed by an orthogonal similarity transformation Q' *
21       A * Q. The routine returns the matrices V and T which determine Q as  a
22       block reflector I - V*T*V', and also the matrix Y = A * V * T.
23
24       This is an OBSOLETE auxiliary routine.
25       This routine will be 'deprecated' in a  future release.
26       Please use the new routine DLAHR2 instead.
27
28

ARGUMENTS

30       N       (input) INTEGER
31               The order of the matrix A.
32
33       K       (input) INTEGER
34               The offset for the reduction. Elements below the k-th subdiago‐
35               nal in the first NB columns are reduced to zero.
36
37       NB      (input) INTEGER
38               The number of columns to be reduced.
39
40       A       (input/output) DOUBLE PRECISION array, dimension (LDA,N-K+1)
41               On entry, the n-by-(n-k+1) general matrix A.  On exit, the ele‐
42               ments on and above the k-th subdiagonal in the first NB columns
43               are overwritten with the corresponding elements of the  reduced
44               matrix; the elements below the k-th subdiagonal, with the array
45               TAU, represent the matrix Q as a product of elementary  reflec‐
46               tors.  The  other  columns  of  A  are  unchanged.  See Further
47               Details.  LDA     (input) INTEGER The leading dimension of  the
48               array A.  LDA >= max(1,N).
49
50       TAU     (output) DOUBLE PRECISION array, dimension (NB)
51               The  scalar  factors  of the elementary reflectors. See Further
52               Details.
53
54       T       (output) DOUBLE PRECISION array, dimension (LDT,NB)
55               The upper triangular matrix T.
56
57       LDT     (input) INTEGER
58               The leading dimension of the array T.  LDT >= NB.
59
60       Y       (output) DOUBLE PRECISION array, dimension (LDY,NB)
61               The n-by-nb matrix Y.
62
63       LDY     (input) INTEGER
64               The leading dimension of the array Y. LDY >= N.
65

FURTHER DETAILS

67       The matrix Q is represented as a product of nb elementary reflectors
68
69          Q = H(1) H(2) . . . H(nb).
70
71       Each H(i) has the form
72
73          H(i) = I - tau * v * v'
74
75       where tau is a real scalar, and v is a real vector with
76       v(1:i+k-1)  =  0,  v(i+k)  =  1;  v(i+k+1:n)  is  stored  on  exit   in
77       A(i+k+1:n,i), and tau in TAU(i).
78
79       The  elements of the vectors v together form the (n-k+1)-by-nb matrix V
80       which is needed, with T and Y, to apply the transformation to the unre‐
81       duced  part  of  the  matrix,  using  an  update of the form: A := (I -
82       V*T*V') * (A - Y*V').
83
84       The contents of A on exit are illustrated by the following example with
85       n = 7, k = 3 and nb = 2:
86
87          ( a   h   a   a   a )
88          ( a   h   a   a   a )
89          ( a   h   a   a   a )
90          ( h   h   a   a   a )
91          ( v1  h   a   a   a )
92          ( v1  v2  a   a   a )
93          ( v1  v2  a   a   a )
94
95       where  a denotes an element of the original matrix A, h denotes a modi‐
96       fied element of the upper Hessenberg matrix H, and vi denotes  an  ele‐
97       ment of the vector defining H(i).
98
99
100
101
102 LAPACK auxiliary routine (versionNo3v.e1m)ber 2006                       DLAHRD(1)
Impressum