1DGEQL2(1) LAPACK routine (version 3.1) DGEQL2(1)
2
3
4
6 DGEQL2 - a QL factorization of a real m by n matrix A
7
9 SUBROUTINE DGEQL2( M, N, A, LDA, TAU, WORK, INFO )
10
11 INTEGER INFO, LDA, M, N
12
13 DOUBLE PRECISION A( LDA, * ), TAU( * ), WORK( * )
14
16 DGEQL2 computes a QL factorization of a real m by n matrix A: A = Q *
17 L.
18
19
21 M (input) INTEGER
22 The number of rows of the matrix A. M >= 0.
23
24 N (input) INTEGER
25 The number of columns of the matrix A. N >= 0.
26
27 A (input/output) DOUBLE PRECISION array, dimension (LDA,N)
28 On entry, the m by n matrix A. On exit, if m >= n, the lower
29 triangle of the subarray A(m-n+1:m,1:n) contains the n by n
30 lower triangular matrix L; if m <= n, the elements on and below
31 the (n-m)-th superdiagonal contain the m by n lower trapezoidal
32 matrix L; the remaining elements, with the array TAU, represent
33 the orthogonal matrix Q as a product of elementary reflectors
34 (see Further Details). LDA (input) INTEGER The leading
35 dimension of the array A. LDA >= max(1,M).
36
37 TAU (output) DOUBLE PRECISION array, dimension (min(M,N))
38 The scalar factors of the elementary reflectors (see Further
39 Details).
40
41 WORK (workspace) DOUBLE PRECISION array, dimension (N)
42
43 INFO (output) INTEGER
44 = 0: successful exit
45 < 0: if INFO = -i, the i-th argument had an illegal value
46
48 The matrix Q is represented as a product of elementary reflectors
49
50 Q = H(k) . . . H(2) H(1), where k = min(m,n).
51
52 Each H(i) has the form
53
54 H(i) = I - tau * v * v'
55
56 where tau is a real scalar, and v is a real vector with
57 v(m-k+i+1:m) = 0 and v(m-k+i) = 1; v(1:m-k+i-1) is stored on exit in
58 A(1:m-k+i-1,n-k+i), and tau in TAU(i).
59
60
61
62
63 LAPACK routine (version 3.1) November 2006 DGEQL2(1)