laqp2#

Functions

void slaqp2(
    const INT           m,
    const INT           n,
    const INT           offset,
          f32* restrict A,
    const INT           lda,
          INT* restrict jpvt,
          f32* restrict tau,
          f32* restrict vn1,
          f32* restrict vn2,
          f32* restrict work
);
void slaqp2(const INT m, const INT n, const INT offset, f32 *restrict A, const INT lda, INT *restrict jpvt, f32 *restrict tau, f32 *restrict vn1, f32 *restrict vn2, f32 *restrict work)#

SLAQP2 computes a QR factorization with column pivoting of the block A(offset:m-1, 0:n-1).

The block A(0:offset-1, 0:n-1) is accordingly pivoted, but not factorized.

Parameters

in
m

The number of rows of the matrix A. m >= 0.

in
n

The number of columns of the matrix A. n >= 0.

in
offset

The number of rows of the matrix A that must be pivoted but not factorized. offset >= 0.

inout
A

Double precision array, dimension (lda, n). On entry, the m-by-n matrix A. On exit, the upper triangle of block A(offset:m-1, 0:n-1) is the triangular factor obtained; the elements in block A(offset:m-1, 0:n-1) below the diagonal, together with the array tau, represent the orthogonal matrix Q as a product of elementary reflectors. Block A(0:offset-1, 0:n-1) has been accordingly pivoted, but not factorized.

in
lda

The leading dimension of the array A. lda >= max(1, m).

inout
jpvt

Integer array, dimension (n). On entry, if jpvt[i] != 0, the i-th column of A is permuted to the front of A*P (a leading column); if jpvt[i] = 0, the i-th column of A is a free column. On exit, if jpvt[i] = k, then the i-th column of A*P was the k-th column of A.

out
tau

Double precision array, dimension (min(m-offset, n)). The scalar factors of the elementary reflectors.

inout
vn1

Double precision array, dimension (n). The vector with the partial column norms.

inout
vn2

Double precision array, dimension (n). The vector with the exact column norms.

out
work

Double precision array, dimension (n).

Functions

void dlaqp2(
    const INT           m,
    const INT           n,
    const INT           offset,
          f64* restrict A,
    const INT           lda,
          INT* restrict jpvt,
          f64* restrict tau,
          f64* restrict vn1,
          f64* restrict vn2,
          f64* restrict work
);
void dlaqp2(const INT m, const INT n, const INT offset, f64 *restrict A, const INT lda, INT *restrict jpvt, f64 *restrict tau, f64 *restrict vn1, f64 *restrict vn2, f64 *restrict work)#

DLAQP2 computes a QR factorization with column pivoting of the block A(offset:m-1, 0:n-1).

The block A(0:offset-1, 0:n-1) is accordingly pivoted, but not factorized.

Parameters

in
m

The number of rows of the matrix A. m >= 0.

in
n

The number of columns of the matrix A. n >= 0.

in
offset

The number of rows of the matrix A that must be pivoted but not factorized. offset >= 0.

inout
A

Double precision array, dimension (lda, n). On entry, the m-by-n matrix A. On exit, the upper triangle of block A(offset:m-1, 0:n-1) is the triangular factor obtained; the elements in block A(offset:m-1, 0:n-1) below the diagonal, together with the array tau, represent the orthogonal matrix Q as a product of elementary reflectors. Block A(0:offset-1, 0:n-1) has been accordingly pivoted, but not factorized.

in
lda

The leading dimension of the array A. lda >= max(1, m).

inout
jpvt

Integer array, dimension (n). On entry, if jpvt[i] != 0, the i-th column of A is permuted to the front of A*P (a leading column); if jpvt[i] = 0, the i-th column of A is a free column. On exit, if jpvt[i] = k, then the i-th column of A*P was the k-th column of A.

out
tau

Double precision array, dimension (min(m-offset, n)). The scalar factors of the elementary reflectors.

inout
vn1

Double precision array, dimension (n). The vector with the partial column norms.

inout
vn2

Double precision array, dimension (n). The vector with the exact column norms.

out
work

Double precision array, dimension (n).

Functions

void claqp2(
    const INT           m,
    const INT           n,
    const INT           offset,
          c64* restrict A,
    const INT           lda,
          INT* restrict jpvt,
          c64* restrict tau,
          f32* restrict vn1,
          f32* restrict vn2,
          c64* restrict work
);
void claqp2(const INT m, const INT n, const INT offset, c64 *restrict A, const INT lda, INT *restrict jpvt, c64 *restrict tau, f32 *restrict vn1, f32 *restrict vn2, c64 *restrict work)#

CLAQP2 computes a QR factorization with column pivoting of the block A(offset:m-1, 0:n-1).

The block A(0:offset-1, 0:n-1) is accordingly pivoted, but not factorized.

Parameters

in
m

The number of rows of the matrix A. m >= 0.

in
n

The number of columns of the matrix A. n >= 0.

in
offset

The number of rows of the matrix A that must be pivoted but not factorized. offset >= 0.

inout
A

Single complex array, dimension (lda, n). On entry, the m-by-n matrix A. On exit, the upper triangle of block A(offset:m-1, 0:n-1) is the triangular factor obtained; the elements in block A(offset:m-1, 0:n-1) below the diagonal, together with the array tau, represent the orthogonal matrix Q as a product of elementary reflectors. Block A(0:offset-1, 0:n-1) has been accordingly pivoted, but not factorized.

in
lda

The leading dimension of the array A. lda >= max(1, m).

inout
jpvt

Integer array, dimension (n). On entry, if jpvt[i] != 0, the i-th column of A is permuted to the front of A*P (a leading column); if jpvt[i] = 0, the i-th column of A is a free column. On exit, if jpvt[i] = k, then the i-th column of A*P was the k-th column of A.

out
tau

Single complex array, dimension (min(m-offset, n)). The scalar factors of the elementary reflectors.

inout
vn1

Single precision array, dimension (n). The vector with the partial column norms.

inout
vn2

Single precision array, dimension (n). The vector with the exact column norms.

out
work

Single complex array, dimension (n).

Functions

void zlaqp2(
    const INT            m,
    const INT            n,
    const INT            offset,
          c128* restrict A,
    const INT            lda,
          INT*  restrict jpvt,
          c128* restrict tau,
          f64*  restrict vn1,
          f64*  restrict vn2,
          c128* restrict work
);
void zlaqp2(const INT m, const INT n, const INT offset, c128 *restrict A, const INT lda, INT *restrict jpvt, c128 *restrict tau, f64 *restrict vn1, f64 *restrict vn2, c128 *restrict work)#

ZLAQP2 computes a QR factorization with column pivoting of the block A(offset:m-1, 0:n-1).

The block A(0:offset-1, 0:n-1) is accordingly pivoted, but not factorized.

Parameters

in
m

The number of rows of the matrix A. m >= 0.

in
n

The number of columns of the matrix A. n >= 0.

in
offset

The number of rows of the matrix A that must be pivoted but not factorized. offset >= 0.

inout
A

Double complex array, dimension (lda, n). On entry, the m-by-n matrix A. On exit, the upper triangle of block A(offset:m-1, 0:n-1) is the triangular factor obtained; the elements in block A(offset:m-1, 0:n-1) below the diagonal, together with the array tau, represent the orthogonal matrix Q as a product of elementary reflectors. Block A(0:offset-1, 0:n-1) has been accordingly pivoted, but not factorized.

in
lda

The leading dimension of the array A. lda >= max(1, m).

inout
jpvt

Integer array, dimension (n). On entry, if jpvt[i] != 0, the i-th column of A is permuted to the front of A*P (a leading column); if jpvt[i] = 0, the i-th column of A is a free column. On exit, if jpvt[i] = k, then the i-th column of A*P was the k-th column of A.

out
tau

Double complex array, dimension (min(m-offset, n)). The scalar factors of the elementary reflectors.

inout
vn1

Double precision array, dimension (n). The vector with the partial column norms.

inout
vn2

Double precision array, dimension (n). The vector with the exact column norms.

out
work

Double complex array, dimension (n).