Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
A newer version of this document is available. Customers should click here to go to the newest version.
?laneg
Computes the Sturm count, the number of negative pivots encountered while factoring tridiagonal T-sigma*I = L*D*LT.
Syntax
value = slaneg( n, d, lld, sigma, pivmin, r )
value = dlaneg( n, d, lld, sigma, pivmin, r )
Include Files
- mkl.fi
Description
The routine computes the Sturm count, the number of negative pivots encountered while factoring tridiagonal T-sigma*I = L*D*LT. This implementation 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 ?larb. The current routine does not use the pivmin parameter but rather requires IEEE-754 propagation of infinities and NaNs (NaN stands for 'Not A Number'). 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 [Marques06]).
Input Parameters
- n
-
INTEGER. The order of the matrix.
- d
-
REAL for slaneg
DOUBLE PRECISION for dlaneg
Array, DIMENSION (n).
Contains n diagonal elements of the matrix D.
- lld
-
REAL for slaneg
DOUBLE PRECISION for dlaneg
Array, DIMENSION (n-1).
Contains (n-1) elements L(i)*L(i)*D(i).
- sigma
-
REAL for slaneg
DOUBLE PRECISION for dlaneg
Shift amount in T-sigma*I = L*D*L**T.
- pivmin
-
REAL for slaneg
DOUBLE PRECISION for dlaneg
The minimum pivot in the Sturm sequence. May be used when zero pivots are encountered on non-IEEE-754 architectures.
- r
-
INTEGER.
The twist index for the twisted factorization that is used for the negcount.
Output Parameters
- value
-
INTEGER. The number of negative pivots encountered while factoring.