Scroll to navigation

cgeqrt3.f(3) LAPACK cgeqrt3.f(3)

NAME

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 (integer M, integer N, complex, dimension( lda, * ) A, integer LDA, complex, dimension( ldt, * ) T, integer LDT, integer INFO)

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:

June 2016

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 134 of file cgeqrt3.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.

Tue Nov 14 2017 Version 3.8.0