1SLAED8(1)                LAPACK routine (version 3.2)                SLAED8(1)
2
3
4

NAME

6       SLAED8  -  merges  the  two  sets of eigenvalues together into a single
7       sorted set
8

SYNOPSIS

10       SUBROUTINE SLAED8( ICOMPQ, K, N, QSIZ, D, Q, LDQ, INDXQ,  RHO,  CUTPNT,
11                          Z,  DLAMDA,  Q2,  LDQ2,  W,  PERM,  GIVPTR,  GIVCOL,
12                          GIVNUM, INDXP, INDX, INFO )
13
14           INTEGER        CUTPNT, GIVPTR, ICOMPQ, INFO, K, LDQ, LDQ2, N, QSIZ
15
16           REAL           RHO
17
18           INTEGER        GIVCOL( 2, * ), INDX( * ), INDXP( * ), INDXQ(  *  ),
19                          PERM( * )
20
21           REAL           D(  *  ),  DLAMDA( * ), GIVNUM( 2, * ), Q( LDQ, * ),
22                          Q2( LDQ2, * ), W( * ), Z( * )
23

PURPOSE

25       SLAED8 merges the two sets of eigenvalues together into a single sorted
26       set.   Then it tries to deflate the size of the problem.  There are two
27       ways in which deflation can occur:  when two or  more  eigenvalues  are
28       close together or if there is a tiny element in the Z vector.  For each
29       such occurrence the order of the related secular  equation  problem  is
30       reduced by one.
31

ARGUMENTS

33       ICOMPQ  (input) INTEGER
34               = 0:  Compute eigenvalues only.
35               =  1:   Compute eigenvectors of original dense symmetric matrix
36               also.  On entry, Q  contains  the  orthogonal  matrix  used  to
37               reduce the original matrix to tridiagonal form.
38
39       K      (output) INTEGER
40              The  number  of  non-deflated  eigenvalues, and the order of the
41              related secular equation.
42
43       N      (input) INTEGER
44              The dimension of the symmetric tridiagonal matrix.  N >= 0.
45
46       QSIZ   (input) INTEGER
47              The dimension of the orthogonal matrix used to reduce  the  full
48              matrix to tridiagonal form.  QSIZ >= N if ICOMPQ = 1.
49
50       D      (input/output) REAL array, dimension (N)
51              On entry, the eigenvalues of the two submatrices to be combined.
52              On exit, the trailing (N-K)  updated  eigenvalues  (those  which
53              were deflated) sorted into increasing order.
54
55       Q      (input/output) REAL array, dimension (LDQ,N)
56              If ICOMPQ = 0, Q is not referenced.  Otherwise, on entry, Q con‐
57              tains the eigenvectors of the partially solved system which  has
58              been  previously  updated  in  matrix multiplies with other par‐
59              tially solved eigensystems.  On exit, Q  contains  the  trailing
60              (N-K)  updated  eigenvectors  (those which were deflated) in its
61              last N-K columns.
62
63       LDQ    (input) INTEGER
64              The leading dimension of the array Q.  LDQ >= max(1,N).
65
66       INDXQ  (input) INTEGER array, dimension (N)
67              The permutation which separately sorts the two sub-problems in D
68              into  ascending order.  Note that elements in the second half of
69              this permutation must first have CUTPNT added to their values in
70              order to be accurate.
71
72       RHO    (input/output) REAL
73              On  entry,  the  off-diagonal element associated with the rank-1
74              cut which originally split the two  submatrices  which  are  now
75              being  recombined.   On exit, RHO has been modified to the value
76              required by SLAED3.  CUTPNT (input) INTEGER The location of  the
77              last  eigenvalue  in the leading sub-matrix.  min(1,N) <= CUTPNT
78              <= N.
79
80       Z      (input) REAL array, dimension (N)
81              On entry, Z contains the updating vector (the last  row  of  the
82              first  sub-eigenvector  matrix  and  the first row of the second
83              sub-eigenvector  matrix).   On  exit,  the  contents  of  Z  are
84              destroyed  by the updating process.  DLAMDA (output) REAL array,
85              dimension (N) A copy of the first K eigenvalues  which  will  be
86              used by SLAED3 to form the secular equation.
87
88       Q2     (output) REAL array, dimension (LDQ2,N)
89              If  ICOMPQ  = 0, Q2 is not referenced.  Otherwise, a copy of the
90              first K eigenvectors which will be used by SLAED7  in  a  matrix
91              multiply (SGEMM) to update the new eigenvectors.
92
93       LDQ2   (input) INTEGER
94              The leading dimension of the array Q2.  LDQ2 >= max(1,N).
95
96       W      (output) REAL array, dimension (N)
97              The  first  k values of the final deflation-altered z-vector and
98              will be passed to SLAED3.
99
100       PERM   (output) INTEGER array, dimension (N)
101              The permutations (from deflation and sorting) to be  applied  to
102              each  eigenblock.   GIVPTR (output) INTEGER The number of Givens
103              rotations which took place in this subproblem.  GIVCOL  (output)
104              INTEGER array, dimension (2, N) Each pair of numbers indicates a
105              pair of columns to take place  in  a  Givens  rotation.   GIVNUM
106              (output)  REAL array, dimension (2, N) Each number indicates the
107              S value to be used in the corresponding Givens rotation.
108
109       INDXP  (workspace) INTEGER array, dimension (N)
110              The permutation used to place deflated values of D at the end of
111              the array.  INDXP(1:K) points to the nondeflated D-values
112              and INDXP(K+1:N) points to the deflated eigenvalues.
113
114       INDX   (workspace) INTEGER array, dimension (N)
115              The  permutation  used  to sort the contents of D into ascending
116              order.
117
118       INFO   (output) INTEGER
119              = 0:  successful exit.
120              < 0:  if INFO = -i, the i-th argument had an illegal value.
121

FURTHER DETAILS

123       Based on contributions by
124          Jeff Rutter, Computer Science Division, University of California
125          at Berkeley, USA
126
127
128
129 LAPACK routine (version 3.2)    November 2008                       SLAED8(1)
Impressum