# dlaqps.f man page

dlaqps.f —

## Synopsis

### Functions/Subroutines

subroutinedlaqps(M, N, OFFSET, NB, KB, A, LDA, JPVT, TAU, VN1, VN2, AUXV, F, LDF)DLAQPScomputes a step of QR factorization with column pivoting of a real m-by-n matrix A by using BLAS level 3.

## Function/Subroutine Documentation

### subroutine dlaqps (integerM, integerN, integerOFFSET, integerNB, integerKB, double precision, dimension( lda, * )A, integerLDA, integer, dimension( * )JPVT, double precision, dimension( * )TAU, double precision, dimension( * )VN1, double precision, dimension( * )VN2, double precision, dimension( * )AUXV, double precision, dimension( ldf, * )F, integerLDF)

**DLAQPS** computes a step of QR factorization with column pivoting of a real m-by-n matrix A by using BLAS level 3.

**Purpose:**

```
DLAQPS computes a step of QR factorization with column pivoting
of a real M-by-N matrix A by using Blas-3. It tries to factorize
NB columns from A starting from the row OFFSET+1, and updates all
of the matrix with Blas-3 xGEMM.
In some cases, due to catastrophic cancellations, it cannot
factorize NB columns. Hence, the actual number of factorized
columns is returned in KB.
Block A(1:OFFSET,1:N) is accordingly pivoted, but not factorized.
```

**Parameters:**

*M*

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

*N*

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

*OFFSET*

```
OFFSET is INTEGER
The number of rows of A that have been factorized in
previous steps.
```

*NB*

```
NB is INTEGER
The number of columns to factorize.
```

*KB*

```
KB is INTEGER
The number of columns actually factorized.
```

*A*

```
A is DOUBLE PRECISION array, dimension (LDA,N)
On entry, the M-by-N matrix A.
On exit, block A(OFFSET+1:M,1:KB) is the triangular
factor obtained and block A(1:OFFSET,1:N) has been
accordingly pivoted, but no factorized.
The rest of the matrix, block A(OFFSET+1:M,KB+1:N) has
been updated.
```

*LDA*

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

*JPVT*

```
JPVT is INTEGER array, dimension (N)
JPVT(I) = K <==> Column K of the full matrix A has been
permuted into position I in AP.
```

*TAU*

```
TAU is DOUBLE PRECISION array, dimension (KB)
The scalar factors of the elementary reflectors.
```

*VN1*

```
VN1 is DOUBLE PRECISION array, dimension (N)
The vector with the partial column norms.
```

*VN2*

```
VN2 is DOUBLE PRECISION array, dimension (N)
The vector with the exact column norms.
```

*AUXV*

```
AUXV is DOUBLE PRECISION array, dimension (NB)
Auxiliar vector.
```

*F*

```
F is DOUBLE PRECISION array, dimension (LDF,NB)
Matrix F**T = L*Y**T*A.
```

*LDF*

```
LDF is INTEGER
The leading dimension of the array F. LDF >= max(1,N).
```

**Author:**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

**Date:**

September 2012

**Contributors:**

G. Quintana-Orti, Depto. de Informatica, Universidad Jaime I, Spain X. Sun, Computer Science Dept., Duke University, USA

Partial column norm updating strategy modified on April 2011 Z. Drmac and Z. Bujanovic, Dept. of Mathematics, University of Zagreb, Croatia.

**References:**

LAPACK Working Note 176

Definition at line 177 of file dlaqps.f.

## Author

Generated automatically by Doxygen for LAPACK from the source code.

## Referenced By

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