dgeqrt.f man page

dgeqrt.f —



subroutine dgeqrt (M, N, NB, A, LDA, T, LDT, WORK, INFO)

Function/Subroutine Documentation

subroutine dgeqrt (integerM, integerN, integerNB, double precision, dimension( lda, * )A, integerLDA, double precision, dimension( ldt, * )T, integerLDT, double precision, dimension( * )WORK, integerINFO)



 DGEQRT computes a blocked QR factorization of a real M-by-N matrix A
 using the compact WY representation of Q.  


          M is INTEGER
          The number of rows of the matrix A.  M >= 0.


          N is INTEGER
          The number of columns of the matrix A.  N >= 0.


          NB is INTEGER
          The block size to be used in the blocked QR.  MIN(M,N) >= NB >= 1.


          A is DOUBLE PRECISION array, dimension (LDA,N)
          On entry, the M-by-N matrix A.
          On exit, the elements on and above the diagonal of the array
          contain the min(M,N)-by-N upper trapezoidal matrix R (R is
          upper triangular if M >= N); the elements below the diagonal
          are the columns of V.


          LDA is INTEGER
          The leading dimension of the array A.  LDA >= max(1,M).


          T is DOUBLE PRECISION array, dimension (LDT,MIN(M,N))
          The upper triangular block reflectors stored in compact form
          as a sequence of upper triangular blocks.  See below
          for further details.


          LDT is INTEGER
          The leading dimension of the array T.  LDT >= NB.


          WORK is DOUBLE PRECISION array, dimension (NB*N)


          INFO is INTEGER
          = 0:  successful exit
          < 0:  if INFO = -i, the i-th argument had an illegal value

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.


November 2013

Further Details:

  The matrix V stores the elementary reflectors H(i) in the i-th column
  below the diagonal. For example, if M=5 and N=3, the matrix V is

               V = (  1       )
                   ( v1  1    )
                   ( v1 v2  1 )
                   ( v1 v2 v3 )
                   ( v1 v2 v3 )

  where the vi's represent the vectors which define H(i), which are returned
  in the matrix A.  The 1's along the diagonal of V are not stored in A.

  Let K=MIN(M,N).  The number of blocks is B = ceiling(K/NB), where each
  block is of order NB except for the last block, which is of order 
  IB = K - (B-1)*NB.  For each of the B blocks, a upper triangular block
  reflector factor is computed: T1, T2, ..., TB.  The NB-by-NB (and IB-by-IB 
  for the last block) T's are stored in the NB-by-N matrix T as

               T = (T1 T2 ... TB).

Definition at line 142 of file dgeqrt.f.


Generated automatically by Doxygen for LAPACK from the source code.

Referenced By

dgeqrt(3) is an alias of dgeqrt.f(3).

Sat Nov 16 2013 Version 3.4.2 LAPACK