Developer Reference

  • 2020.2
  • 07/15/2020
  • Public Content
Contents

?larzb

Applies a block reflector or its transpose/conjugate-transpose to a general matrix.

Syntax

call slarzb
(
side
,
trans
,
direct
,
storev
,
m
,
n
,
k
,
l
,
v
,
ldv
,
t
,
ldt
,
c
,
ldc
,
work
,
ldwork
)
call dlarzb
(
side
,
trans
,
direct
,
storev
,
m
,
n
,
k
,
l
,
v
,
ldv
,
t
,
ldt
,
c
,
ldc
,
work
,
ldwork
)
call clarzb
(
side
,
trans
,
direct
,
storev
,
m
,
n
,
k
,
l
,
v
,
ldv
,
t
,
ldt
,
c
,
ldc
,
work
,
ldwork
)
call zlarzb
(
side
,
trans
,
direct
,
storev
,
m
,
n
,
k
,
l
,
v
,
ldv
,
t
,
ldt
,
c
,
ldc
,
work
,
ldwork
)
Include Files
  • mkl.fi
Description
The routine applies a real/complex block reflector
H
or its transpose
H
T
(or the conjugate transpose
H
H
for complex flavors) to a real/complex distributed
m
-by-
n
matrix
C
from the left or the right. Currently, only
storev
=
'R'
and
direct
=
'B'
are supported.
Input Parameters
side
CHARACTER*1
.
If
side
=
'L'
: apply
H
or
H
T
/
H
H
from the left
If
side
=
'R'
: apply
H
or
H
T
/
H
H
from the right
trans
CHARACTER*1
.
If
trans
=
'N'
: apply
H
(No transpose)
If
trans
=
'C'
: apply
H
H
(conjugate transpose)
If
trans
=
'T'
: apply
H
T
(transpose transpose)
direct
CHARACTER*1
.
Indicates how
H
is formed from a product of elementary reflectors
=
'F'
:
H
=
H
(1)*
H
(2)*...*
H
(
k
)
(forward, not supported)
=
'B'
:
H
=
H
(
k
)*...*
H
(2)*
H
(1)
(backward)
storev
CHARACTER*1
.
Indicates how the vectors which define the elementary reflectors are stored:
=
'C'
: Column-wise (not supported)
=
'R'
: Row-wise.
m
INTEGER
. The number of rows of the matrix
C
.