![]() |
LAPACK
3.9.0
LAPACK: Linear Algebra PACKage
|
| subroutine ssvdct | ( | integer | N, |
| real, dimension( * ) | S, | ||
| real, dimension( * ) | E, | ||
| real | SHIFT, | ||
| integer | NUM | ||
| ) |
SSVDCT
SSVDCT counts the number NUM of eigenvalues of a 2*N by 2*N tridiagonal matrix T which are less than or equal to SHIFT. T is formed by putting zeros on the diagonal and making the off-diagonals equal to S(1), E(1), S(2), E(2), ... , E(N-1), S(N). If SHIFT is positive, NUM is equal to N plus the number of singular values of a bidiagonal matrix B less than or equal to SHIFT. Here B has diagonal entries S(1), ..., S(N) and superdiagonal entries E(1), ... E(N-1). If SHIFT is negative, NUM is equal to the number of singular values of B greater than or equal to -SHIFT. See W. Kahan "Accurate Eigenvalues of a Symmetric Tridiagonal Matrix", Report CS41, Computer Science Dept., Stanford University, July 21, 1966
| [in] | N | N is INTEGER
The dimension of the bidiagonal matrix B. |
| [in] | S | S is REAL array, dimension (N)
The diagonal entries of the bidiagonal matrix B. |
| [in] | E | E is REAL array of dimension (N-1)
The superdiagonal entries of the bidiagonal matrix B. |
| [in] | SHIFT | SHIFT is REAL
The shift, used as described under Purpose. |
| [out] | NUM | NUM is INTEGER
The number of eigenvalues of T less than or equal to SHIFT. |
Definition at line 89 of file ssvdct.f.