Developer Reference

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

p?gebrd

Reduces a general matrix to bidiagonal form.

Syntax

call psgebrd
(
m
,
n
,
a
,
ia
,
ja
,
desca
,
d
,
e
,
tauq
,
taup
,
work
,
lwork
,
info
)
call pdgebrd
(
m
,
n
,
a
,
ia
,
ja
,
desca
,
d
,
e
,
tauq
,
taup
,
work
,
lwork
,
info
)
call pcgebrd
(
m
,
n
,
a
,
ia
,
ja
,
desca
,
d
,
e
,
tauq
,
taup
,
work
,
lwork
,
info
)
call pzgebrd
(
m
,
n
,
a
,
ia
,
ja
,
desca
,
d
,
e
,
tauq
,
taup
,
work
,
lwork
,
info
)
Include Files
Description
The
p?gebrd
routine
reduces a real/complex general
m
-by-
n
distributed matrix sub(
A
)=
A
(
ia
:
ia
+
m
-1,
ja
:
ja
+
n
-1) to upper or lower bidiagonal form
B
by an orthogonal/unitary transformation:
Q'
*sub(
A
)*
P
=
B
.
If
m
n
,
B
is upper bidiagonal; if
m
<
n
,
B
is lower bidiagonal.
Input Parameters
m
(global)
INTEGER
.
The number of rows in the distributed matrix sub(
A
)
(
m
≥0)
.
n
(global)
INTEGER
.
The number of columns in the distributed matrix sub(
A
)
(
n
≥0)
.
a
(local)
REAL
for
psgebrd
DOUBLE PRECISION
for
pdgebrd
COMPLEX
for
pcgebrd
DOUBLE COMPLEX
for
pzgebrd
.
Real pointer into the local memory to an array of size
(
lld_a
,
LOCc
(
ja
+
n
-1))
. On entry, this array contains the distributed matrix sub (
A
).
ia
,
ja
(global)
INTEGER
.
The row and column indices in the global matrix
A
indicating the first row and the first column of the submatrix
A
, respectively.
desca
(global and local)
INTEGER
array of size
dlen_
. The array descriptor for the distributed matrix
A
.
work
(local)
REAL
for
psgebrd
DOUBLE PRECISION
for
pdgebrd
COMPLEX
for
pcgebrd
DOUBLE COMPLEX
for
pzgebrd
.
Workspace array of size
lwork
.
lwork
(local or global)
INTEGER
,
size of
work
, must be at least:
lwork
nb
*(
mpa
0 +
nqa
0+1)+
nqa
0
where