SysTutorials

Linux Manual Pages › Section 3

dlarrb-f(3)

dlarrb.f –

Synopsis

Functions/Subroutines

subroutine dlarrb (N, D, LLD, IFIRST, ILAST, RTOL1, RTOL2, OFFSET, W, WGAP, WERR, WORK, IWORK, PIVMIN, SPDIAM, TWIST, INFO)
DLARRB provides limited bisection to locate eigenvalues for more accuracy.

Function/Subroutine Documentation

subroutine dlarrb (integerN, double precision, dimension( * )D, double precision, dimension( * )LLD, integerIFIRST, integerILAST, double precisionRTOL1, double precisionRTOL2, integerOFFSET, double precision, dimension( * )W, double precision, dimension( * )WGAP, double precision, dimension( * )WERR, double precision, dimension( * )WORK, integer, dimension( * )IWORK, double precisionPIVMIN, double precisionSPDIAM, integerTWIST, integerINFO)

DLARRB provides limited bisection to locate eigenvalues for more accuracy.

Purpose:

 Given the relatively robust representation(RRR) L D L^T, DLARRB
 does "limited" bisection to refine the eigenvalues of L D L^T,
 W( IFIRST-OFFSET ) through W( ILAST-OFFSET ), to more accuracy. Initial
 guesses for these eigenvalues are input in W, the corresponding estimate
 of the error in these guesses and their gaps are input in WERR
 and WGAP, respectively. During bisection, intervals
 [left, right] are maintained by storing their mid-points and
 semi-widths in the arrays W and WERR respectively.

 

Parameters:

N

 N is INTEGER
 The order of the matrix.

D

 D is DOUBLE PRECISION array, dimension (N)
 The N diagonal elements of the diagonal matrix D.

LLD

 LLD is DOUBLE PRECISION array, dimension (N-1)
 The (N-1) elements L(i)*L(i)*D(i).

IFIRST

 IFIRST is INTEGER
 The index of the first eigenvalue to be computed.

ILAST

 ILAST is INTEGER
 The index of the last eigenvalue to be computed.

RTOL1

 RTOL1 is DOUBLE PRECISION

RTOL2

 RTOL2 is DOUBLE PRECISION
 Tolerance for the convergence of the bisection intervals.
 An interval [LEFT,RIGHT] has converged if
 RIGHT-LEFT.LT.MAX( RTOL1*GAP, RTOL2*MAX(|LEFT|,|RIGHT|) )
 where GAP is the (estimated) distance to the nearest
 eigenvalue.

OFFSET

 OFFSET is INTEGER
 Offset for the arrays W, WGAP and WERR, i.e., the IFIRST-OFFSET
 through ILAST-OFFSET elements of these arrays are to be used.

W

 W is DOUBLE PRECISION array, dimension (N)
 On input, W( IFIRST-OFFSET ) through W( ILAST-OFFSET ) are
 estimates of the eigenvalues of L D L^T indexed IFIRST throug
 ILAST.
 On output, these estimates are refined.

WGAP

 WGAP is DOUBLE PRECISION array, dimension (N-1)
 On input, the (estimated) gaps between consecutive
 eigenvalues of L D L^T, i.e., WGAP(I-OFFSET) is the gap between
 eigenvalues I and I+1. Note that if IFIRST.EQ.ILAST
 then WGAP(IFIRST-OFFSET) must be set to ZERO.
 On output, these gaps are refined.

WERR

 WERR is DOUBLE PRECISION array, dimension (N)
 On input, WERR( IFIRST-OFFSET ) through WERR( ILAST-OFFSET ) are
 the errors in the estimates of the corresponding elements in W.
 On output, these errors are refined.

WORK

 WORK is DOUBLE PRECISION array, dimension (2*N)
 Workspace.

IWORK

 IWORK is INTEGER array, dimension (2*N)
 Workspace.

PIVMIN

 PIVMIN is DOUBLE PRECISION
 The minimum pivot in the Sturm sequence.

SPDIAM

 SPDIAM is DOUBLE PRECISION
 The spectral diameter of the matrix.

TWIST

 TWIST is INTEGER
 The twist index for the twisted factorization that is used
 for the negcount.
 TWIST = N: Compute negcount from L D L^T - LAMBDA I = L+ D+ L+^T
 TWIST = 1: Compute negcount from L D L^T - LAMBDA I = U- D- U-^T
 TWIST = R: Compute negcount from L D L^T - LAMBDA I = N(r) D(r) N(r)

INFO

 INFO is INTEGER
 Error flag.

 

Author:

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Date:

September 2012

Contributors:

Beresford Parlett, University of California, Berkeley, USA

 Jim Demmel, University of California, Berkeley, USA 

 Inderjit Dhillon, University of Texas, Austin, USA 

 Osni Marques, LBNL/NERSC, USA 

 Christof Voemel, University of California, Berkeley, USA 

Definition at line 195 of file dlarrb.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.