1DLAED2(1)                LAPACK routine (version 3.1)                DLAED2(1)
2
3
4

NAME

6       DLAED2 - the two sets of eigenvalues together into a single sorted set
7

SYNOPSIS

9       SUBROUTINE DLAED2( K,  N,  N1, D, Q, LDQ, INDXQ, RHO, Z, DLAMDA, W, Q2,
10                          INDX, INDXC, INDXP, COLTYP, INFO )
11
12           INTEGER        INFO, K, LDQ, N, N1
13
14           DOUBLE         PRECISION RHO
15
16           INTEGER        COLTYP( * ), INDX( * ), INDXC(  *  ),  INDXP(  *  ),
17                          INDXQ( * )
18
19           DOUBLE         PRECISION D( * ), DLAMDA( * ), Q( LDQ, * ), Q2( * ),
20                          W( * ), Z( * )
21

PURPOSE

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

ARGUMENTS

32       K      (output) INTEGER
33              The  number  of  non-deflated  eigenvalues, and the order of the
34              related secular equation. 0 <= K <=N.
35
36       N      (input) INTEGER
37              The dimension of the symmetric tridiagonal matrix.  N >= 0.
38
39       N1     (input) INTEGER
40              The location of the last eigenvalue in the  leading  sub-matrix.
41              min(1,N) <= N1 <= N/2.
42
43       D      (input/output) DOUBLE PRECISION array, dimension (N)
44              On  entry,  D contains the eigenvalues of the two submatrices to
45              be combined.  On exit, D contains the trailing (N-K) updated ei‐
46              genvalues  (those  which  were  deflated) sorted into increasing
47              order.
48
49       Q      (input/output) DOUBLE PRECISION array, dimension (LDQ, N)
50              On entry, Q contains the eigenvectors of two submatrices in  the
51              two  square  blocks  with  corners  at (1,1), (N1,N1) and (N1+1,
52              N1+1), (N,N).  On exit, Q contains the  trailing  (N-K)  updated
53              eigenvectors  (those  which  were deflated) in its last N-K col‐
54              umns.
55
56       LDQ    (input) INTEGER
57              The leading dimension of the array Q.  LDQ >= max(1,N).
58
59       INDXQ  (input/output) INTEGER array, dimension (N)
60              The permutation which separately sorts the two sub-problems in D
61              into  ascending order.  Note that elements in the second half of
62              this permutation must first  have  N1  added  to  their  values.
63              Destroyed on exit.
64
65       RHO    (input/output) DOUBLE PRECISION
66              On  entry,  the  off-diagonal element associated with the rank-1
67              cut which originally split the two  submatrices  which  are  now
68              being  recombined.   On exit, RHO has been modified to the value
69              required by DLAED3.
70
71       Z      (input) DOUBLE PRECISION array, dimension (N)
72              On entry, Z contains the updating vector (the last  row  of  the
73              first  sub-eigenvector  matrix  and  the first row of the second
74              sub-eigenvector matrix).  On exit, the contents of Z  have  been
75              destroyed by the updating process.
76
77              DLAMDA  (output) DOUBLE PRECISION array, dimension (N) A copy of
78              the first K eigenvalues which will be used by DLAED3 to form the
79              secular equation.
80
81       W      (output) DOUBLE PRECISION array, dimension (N)
82              The first k values of the final deflation-altered z-vector which
83              will be passed to DLAED3.
84
85       Q2     (output) DOUBLE PRECISION array, dimension (N1**2+(N-N1)**2)
86              A copy of the first K eigenvectors which will be used by  DLAED3
87              in a matrix multiply (DGEMM) to solve for the new eigenvectors.
88
89       INDX   (workspace) INTEGER array, dimension (N)
90              The permutation used to sort the contents of DLAMDA into ascend‐
91              ing order.
92
93       INDXC  (output) INTEGER array, dimension (N)
94              The permutation used to arrange the columns of  the  deflated  Q
95              matrix  into  three  groups:   the first group contains non-zero
96              elements only at and above N1, the second contains non-zero ele‐
97              ments only below N1, and the third is dense.
98
99       INDXP  (workspace) INTEGER array, dimension (N)
100              The permutation used to place deflated values of D at the end of
101              the array.  INDXP(1:K) points to the nondeflated D-values
102              and INDXP(K+1:N) points to the deflated eigenvalues.
103
104              COLTYP (workspace/output) INTEGER array,  dimension  (N)  During
105              execution,  a  label  which will indicate which of the following
106              types a column in the Q2 matrix is:
107              1 : non-zero in the upper half only;
108              2 : dense;
109              3 : non-zero in the lower half only;
110              4 : deflated.  On exit, COLTYP(i) is the number  of  columns  of
111              type i, for i=1 to 4 only.
112
113       INFO   (output) INTEGER
114              = 0:  successful exit.
115              < 0:  if INFO = -i, the i-th argument had an illegal value.
116

FURTHER DETAILS

118       Based on contributions by
119          Jeff Rutter, Computer Science Division, University of California
120          at Berkeley, USA
121       Modified by Francoise Tisseur, University of Tennessee.
122
123
124
125
126 LAPACK routine (version 3.1)    November 2006                       DLAED2(1)
Impressum