SLANEG(1) LAPACK auxiliary routine (version 3.2) SLANEG(1)NAME
SLANEG - computes the Sturm count, the number of negative pivots
encountered while factoring tridiagonal T - sigma I = L D L^T
SYNOPSIS
FUNCTION SLANEG( N, D, LLD, SIGMA, PIVMIN, R )
IMPLICIT NONE
INTEGER SLANEG
INTEGER N, R
REAL PIVMIN, SIGMA
REAL D( * ), LLD( * )
PURPOSE
SLANEG computes the Sturm count, the number of negative pivots encoun‐
tered while factoring tridiagonal T - sigma I = L D L^T. This imple‐
mentation works directly on the factors without forming the tridiagonal
matrix T. The Sturm count is also the number of eigenvalues of T less
than sigma.
This routine is called from SLARRB.
The current routine does not use the PIVMIN parameter but rather
requires IEEE-754 propagation of Infinities and NaNs. This routine
also has no input range restrictions but does require default exception
handling such that x/0 produces Inf when x is non-zero, and Inf/Inf
produces NaN. For more information, see:
Marques, Riedy, and Voemel, "Benefits of IEEE-754 Features in
Modern Symmetric Tridiagonal Eigensolvers," SIAM Journal on
Scientific Computing, v28, n5, 2006. DOI 10.1137/050641624
(Tech report version in LAWN 172 with the same title.)
ARGUMENTS
N (input) INTEGER
The order of the matrix.
D (input) REAL array, dimension (N)
The N diagonal elements of the diagonal matrix D.
LLD (input) REAL array, dimension (N-1)
The (N-1) elements L(i)*L(i)*D(i).
SIGMA (input) REAL
Shift amount in T - sigma I = L D L^T.
PIVMIN (input) REAL
The minimum pivot in the Sturm sequence. May be used when zero
pivots are encountered on non-IEEE-754 architectures.
R (input) INTEGER
The twist index for the twisted factorization that is used for
the negcount.
FURTHER DETAILS
Based on contributions by
Osni Marques, LBNL/NERSC, USA
Christof Voemel, University of California, Berkeley, USA
Jason Riedy, University of California, Berkeley, USA
LAPACK auxiliary routine (versioNovember 2008 SLANEG(1)