Developer Reference

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

?lasd2

Merges the two sets of singular values together into a single sorted set. Used by
?bdsdc
.

Syntax

call slasd2
(
nl
,
nr
,
sqre
,
k
,
d
,
z
,
alpha
,
beta
,
u
,
ldu
,
vt
,
ldvt
,
dsigma
,
u2
,
ldu2
,
vt2
,
ldvt2
,
idxp
,
idx
,
idxp
,
idxq
,
coltyp
,
info
)
call dlasd2
(
nl
,
nr
,
sqre
,
k
,
d
,
z
,
alpha
,
beta
,
u
,
ldu
,
vt
,
ldvt
,
dsigma
,
u2
,
ldu2
,
vt2
,
ldvt2
,
idxp
,
idx
,
idxp
,
idxq
,
coltyp
,
info
)
Include Files
  • mkl.fi
Description
The routine
?lasd2
merges the two sets of singular values together into a single sorted set. Then it tries to deflate the size of the problem. There are two ways in which deflation can occur: when two or more singular values are close together or if there is a tiny entry in the
Z
vector. For each such occurrence the order of the related secular equation problem is reduced by one.
The routine
?lasd2
is called from
?lasd1
.
Input Parameters
nl
INTEGER
.
The row dimension of the upper block.
nl
1
.
nr
INTEGER
.
The row dimension of the lower block.
nr
1
.
sqre
INTEGER
.
If
sqre
= 0
): the lower block is an
nr
-by-
nr
square matrix
If
sqre
= 1
): the lower block is an
nr
-by-(
nr
+1) rectangular matrix. The bidiagonal matrix has
n
=
nl
+
nr
+ 1
rows and
m
=
n
+
sqre
n
columns.
d
REAL
for
slasd2
DOUBLE PRECISION
for
dlasd2
Array,
DIMENSION
(
n
). On entry
d
contains the singular values of the two submatrices to be combined.
alpha
REAL
for
slasd2
DOUBLE PRECISION
for
dlasd2
Contains the diagonal element associated with the added row.
beta
REAL
for
slasd2
DOUBLE PRECISION
for
dlasd2
Contains the off-diagonal element associated with the added row.
u
REAL
for
slasd2
DOUBLE PRECISION
for
dlasd2
Array,
DIMENSION
(
ldu
,
n
). On entry
u
contains the left singular vectors of two submatrices in the two square blocks with corners at (1,1), (
nl
,
nl
), and (
nl
+2,
nl
+2), (
n
,
n
).
ldu
INTEGER
.
The leading dimension of the array
u
.
ldu
n
.
ldu2
INTEGER
.
The leading dimension of the output array
u2
.
ldu2
n
.
vt
REAL
for
slasd2
DOUBLE PRECISION