The
by
upper trapezoidal matrix
given by
where
is an
by
upper triangular matrix, is factorized as
where
is an
by
unitary matrix and
is an
by
upper triangular matrix.
is given as a sequence of Householder transformation matrices
the
th transformation matrix,
, being used to introduce zeros into the
th row of
.
has the form
where
is a scalar for which
,
is a real scalar and
is an
element vector.
,
and
are chosen to annihilate the elements of the
th row of
and to make the diagonal elements of
real.
The scalar
and the vector
are returned in the
th element of the array
THETA and in the
th row of
A, such that
, given by
is in
and the elements of
are in
. The elements of
are returned in the upper triangular part of
A.
For further information on this factorization and its use see Section 6.5 of
Golub and Van Loan (1996).
If on entry
or
, explanatory error messages are output on the current error message unit (as defined by
X04AAF).
The computed factors
and
satisfy the relation
where
is the
machine precision (see
X02AJF),
is a modest function of
and
, and
denotes the spectral (two) norm.
F01RGF is not threaded by NAG in any implementation.
F01RGF makes calls to BLAS and/or LAPACK routines, which may be threaded within the vendor library used by this implementation. Consult the documentation for the vendor library for further information.
Please consult the
X06 Chapter Introduction for information on how to control and interrogate the OpenMP environment used within this routine. Please also consult the
Users' Note for your implementation for any additional implementation-specific information.
This example reduces the
by
matrix
to upper triangular form.