This manual relates to an old release of the Library.
The documentation for the current release is also available on this site.

NAG FL Interface
f06tqf (zutupd)

Settings help

FL Name Style:


FL Specification Language:


1 Purpose

f06tqf performs a QR factorization (as a sequence of plane rotations) of a complex upper triangular matrix that has been augmented by a full row.

2 Specification

Fortran Interface
Subroutine f06tqf ( n, alpha, x, incx, a, lda, c, s)
Integer, Intent (In) :: n, incx, lda
Real (Kind=nag_wp), Intent (Out) :: c(n)
Complex (Kind=nag_wp), Intent (In) :: alpha
Complex (Kind=nag_wp), Intent (Inout) :: x(*), a(lda,*)
Complex (Kind=nag_wp), Intent (Out) :: s(n)
C Header Interface
#include <nag.h>
void  f06tqf_ (const Integer *n, const Complex *alpha, Complex x[], const Integer *incx, Complex a[], const Integer *lda, double c[], Complex s[])
The routine may be called by the names f06tqf or nagf_blas_zutupd.

3 Description

f06tqf performs the factorization
( U αxT )=Q ( R 0 )  
where U and R are n×n complex upper triangular matrices, x is an n-element complex vector, α is a complex scalar, and Q is a complex unitary matrix. If U has real diagonal elements, then so does R.
Q is formed as a sequence of plane rotations
QH = Qn Q2 Q1  
where Qk is a rotation in the (k,n+1) plane, chosen to annihilate xk.
The 2×2 plane rotation part of Qk has the form
( ck s¯k -sk ck )  
with ck real.

4 References

None.

5 Arguments

1: n Integer Input
On entry: n, the order of the matrices U and R.
Constraint: n0.
2: alpha Complex (Kind=nag_wp) Input
On entry: the scalar α.
3: x(*) Complex (Kind=nag_wp) array Input/Output
Note: the dimension of the array x must be at least max(1, 1+(n-1) ×incx ) .
On entry: the n-element vector x. xi must be stored in x(1+(i-1)×incx), for i=1,2,,n.
Intermediate elements of x are not referenced.
On exit: the referenced elements are overwritten by details of the sequence of plane rotations.
4: incx Integer Input
On entry: the increment in the subscripts of x between successive elements of x.
Constraint: incx>0.
5: a(lda,*) Complex (Kind=nag_wp) array Input/Output
Note: the second dimension of the array a must be at least n.
On entry: the n×n upper triangular matrix U.
On exit: the upper triangular matrix R.
6: lda Integer Input
On entry: the first dimension of the array a as declared in the (sub)program from which f06tqf is called.
Constraint: lda max(1,n) .
7: c(n) Real (Kind=nag_wp) array Output
On exit: the values ck, the cosines of the rotations Qk, for k=1,2,,n.
8: s(n) Complex (Kind=nag_wp) array Output
On exit: the values sk, the sines of the rotations Qk, for k=1,2,,n.

6 Error Indicators and Warnings

None.

7 Accuracy

Not applicable.

8 Parallelism and Performance

f06tqf is not threaded in any implementation.

9 Further Comments

None.

10 Example

None.