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