man dlarrb (Fonctions bibliothèques) - the relatively robust representation(RRR) L D L^T, DLARRB does ``limited'' bisection to locate the eigenvalues of L D L^T,
NAME
DLARRB - the relatively robust representation(RRR) L D L^T, DLARRB does ``limited'' bisection to locate the eigenvalues of L D L^T,
SYNOPSIS
- SUBROUTINE DLARRB(
- N, D, L, LD, LLD, IFIRST, ILAST, SIGMA, RELTOL, W, WGAP, WERR, WORK, IWORK, INFO )
- INTEGER IFIRST, ILAST, INFO, N
- DOUBLE PRECISION RELTOL, SIGMA
- INTEGER IWORK( * )
- DOUBLE PRECISION D( * ), L( * ), LD( * ), LLD( * ), W( * ), WERR( * ), WGAP( * ), WORK( * )
PURPOSE
Given the relatively robust representation(RRR) L D L^T, DLARRB does ``limited'' bisection to locate the eigenvalues of L D L^T, W( IFIRST ) thru' W( ILAST ), to more accuracy. Intervals
[left, right] are maintained by storing their mid-points and
semi-widths in the arrays W and WERR respectively.
ARGUMENTS
- N (input) INTEGER
- The order of the matrix.
- D (input) DOUBLE PRECISION array, dimension (N)
- The n diagonal elements of the diagonal matrix D.
- L (input) DOUBLE PRECISION array, dimension (N-1)
- The n-1 subdiagonal elements of the unit bidiagonal matrix L.
- LD (input) DOUBLE PRECISION array, dimension (N-1)
- The n-1 elements L(i)*D(i).
- LLD (input) DOUBLE PRECISION array, dimension (N-1)
- The n-1 elements L(i)*L(i)*D(i).
- IFIRST (input) INTEGER
- The index of the first eigenvalue in the cluster.
- ILAST (input) INTEGER
- The index of the last eigenvalue in the cluster.
- SIGMA (input) DOUBLE PRECISION
- The shift used to form L D L^T (see DLARRF).
- RELTOL (input) DOUBLE PRECISION
- The relative tolerance.
- W (input/output) DOUBLE PRECISION array, dimension (N)
- On input, W( IFIRST ) thru' W( ILAST ) are estimates of the corresponding eigenvalues of L D L^T. On output, these estimates are ``refined''.
- WGAP (input/output) DOUBLE PRECISION array, dimension (N)
- The gaps between the eigenvalues of L D L^T. Very small gaps are changed on output.
- WERR (input/output) DOUBLE PRECISION array, dimension (N)
- On input, WERR( IFIRST ) thru' WERR( ILAST ) are the errors in the estimates W( IFIRST ) thru' W( ILAST ). On output, these are the ``refined'' errors.
- WORK (input) DOUBLE PRECISION array, dimension (???)
- Workspace.
- IWORK (input) INTEGER array, dimension (2*N)
- Workspace.
- INFO (output) INTEGER
- Error flag.
FURTHER DETAILS
Based on contributions by
Inderjit Dhillon, IBM Almaden, USA
Osni Marques, LBNL/NERSC, USA