Developer Reference

  • 2021.1
  • 12/04/2020
  • Public Content
Contents

?tpqrt

Computes a blocked QR factorization of a real or complex "triangular-pentagonal" matrix, which is composed of a triangular block and a pentagonal block, using the compact WY representation for Q.

Syntax

lapack_int
LAPACKE_stpqrt
(
int
matrix_layout
,
lapack_int
m
,
lapack_int
n
,
lapack_int
l
,
lapack_int
nb
,
float
*
a
,
lapack_int
lda
,
float
*
b
,
lapack_int
ldb
,
float
*
t
,
lapack_int
ldt
);
lapack_int
LAPACKE_dtpqrt
(
int
matrix_layout
,
lapack_int
m
,
lapack_int
n
,
lapack_int
l
,
lapack_int
nb
,
double
*
a
,
lapack_int
lda
,
double
*
b
,
lapack_int
ldb
,
double
*
t
,
lapack_int
ldt
);
lapack_int
LAPACKE_ctpqrt
(
int
matrix_layout
,
lapack_int
m
,
lapack_int
n
,
lapack_int
l
,
lapack_int
nb
,
lapack_complex_float
*
a
,
lapack_int
lda
,
lapack_complex_float
*
b
,
lapack_int
ldb
,
lapack_complex_float
*
t
,
lapack_int
ldt
);
lapack_int
LAPACKE_ztpqrt
(
int
matrix_layout
,
lapack_int
m
,
lapack_int
n
,
lapack_int
l
,
lapack_int
nb
,
lapack_complex_double
*
a
,
lapack_int
lda
,
lapack_complex_double
*
b
,
lapack_int
ldb
,
lapack_complex_double
*
t
,
lapack_int
ldt
);
Include Files
  • mkl.h
Description
The input matrix
C
is an (
n
+
m
)-by-
n
matrix
Equation
where
A
is an
n
-by-
n
upper triangular matrix, and
B
is an
m
-by-
n
pentagonal matrix consisting of an (
m
-
l
)-by-
n
rectangular matrix
B1
on top of an
l
-by-
n
upper trapezoidal matrix
B2
:
Equation
The upper trapezoidal matrix
B2
consists of the first
l
rows of an
n
-by-
n
upper triangular matrix, where 0 ≤
l
≤ min(
m
,
n
). If
l
=0,
B
is an
m
-by-
n
rectangular matrix. If
m
=
l
=
n
,
B
is upper triangular. The elementary reflectors
H(i)
are stored in the
i
th column below the diagonal in the (
n
+
m
)-by-
n
input matrix
C
. The structure of vectors defining the elementary reflectors is illustrated by:
Equation
The elements of the unit matrix
I
are not stored. Thus,
V
contains all of the necessary information, and is returned in array
b
.
Note that
V
has the same form as
B
:
Equation
The columns of
V
represent the vectors which define the
H(i)
s.
The number of blocks is
k
= ceiling(
n
/
nb
), where each block is of order
nb
except for the last block, which is of order
ib
=
n
- (
k
-1)*
nb
. For each of the
k
blocks, an upper triangular block reflector factor is computed:
T1
,
T2
, ...,
Tk
. The
nb
-by-
nb
(
ib
-by-
ib
for the last block)
Ti
s are stored in the
nb
-by-
n
array
t
as
t
= [
T1
T2
...
Tk
]
.
Input Parameters
matrix_layout
Specifies whether matrix storage layout is row major (
LAPACK_ROW_MAJOR
) or column major (
LAPACK_COL_MAJOR
).
m
The total number of rows in the matrix
B
(
m
≥ 0).
n
The number of columns in
B
and the order of the triangular matrix
A
(
n
≥ 0).
l
The number of rows of the upper trapezoidal part of
B
(min(
m
,
n
) ≥
l
≥ 0).
nb
The block size to use in the blocked
QR
factorization (
n
nb
≥ 1).
a
,
b
Arrays:
a
size
lda
*
n
contains the
n
-by-
n
upper triangular matrix
A
.
b
size
max(1,
ldb
*
n
) for column major layout and max(1,
ldb
*
m
) for row major layout
, the pentagonal
m
-by-
n
matrix
B
. The first (
m
-
l
) rows contain the rectangular
B1
matrix, and the next
l
rows contain the upper trapezoidal
B2
matrix.
lda
The leading dimension of
a
; at least max(1,
n
).
ldb
The leading dimension of
b
; at least max(1,
m
)
for column major layout and at least max(1,
n
) for row major layout
.
ldt
The leading dimension of
t
; at least
nb
for column major layout and at least max(1,
n
) for row major layout
.
Output Parameters
a
The elements on and above the diagonal of the array contain the upper triangular matrix
R
.
b
The pentagonal matrix
V
.
t
Array, size
ldt
*
n
for column major layout and
ldt
*
nb
for row major layout
.
The upper triangular block reflectors stored in compact form as a sequence of upper triangular blocks.
Return Values
This function returns a value
info
.
If
info
=0
, the execution is successful.
If
info
=
-i
, the
i
-th parameter had an illegal value.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.