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