SysTutorials

Linux Manual Pages › Section 3

cgeqrt3-f(3)

cgeqrt3.f –

Synopsis

Functions/Subroutines

recursive subroutine cgeqrt3 (M, N, A, LDA, T, LDT, INFO)
CGEQRT3 recursively computes a QR factorization of a general real or complex matrix using the compact WY representation of Q.

Function/Subroutine Documentation

recursive subroutine cgeqrt3 (integerM, integerN, complex, dimension( lda, * )A, integerLDA, complex, dimension( ldt, * )T, integerLDT, integerINFO)

CGEQRT3 recursively computes a QR factorization of a general real or complex matrix using the compact WY representation of Q.

Purpose:

 CGEQRT3 recursively computes a QR factorization of a complex M-by-N matrix A, 
 using the compact WY representation of Q. 
 Based on the algorithm of Elmroth and Gustavson, 
 IBM J. Res. Develop. Vol 44 No. 4 July 2000.

 

Parameters:

M

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

N

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

A

 A is COMPLEX array, dimension (LDA,N)
 On entry, the complex M-by-N matrix A. On exit, the elements on and
 above the diagonal contain the N-by-N upper triangular matrix R; the
 elements below the diagonal are the columns of V. See below for
 further details.

LDA

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

T

 T is COMPLEX array, dimension (LDT,N)
 The N-by-N upper triangular factor of the block reflector.
 The elements on and above the diagonal contain the block
 reflector T; the elements below the diagonal are not used.
 See below for further details.

LDT

 LDT is INTEGER
 The leading dimension of the array T. LDT >= max(1,N).

INFO

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

 

Author:

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Date:

September 2012

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. The
 block reflector H is then given by
 H = I - V * T * V**H
 where V**H is the conjugate transpose of V.
 For details of the algorithm, see Elmroth and Gustavson (cited above).

 

Definition at line 133 of file cgeqrt3.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.