Subroutine */
| 26654 | } /* dlasd4_ */ |
| 26655 | |
| 26656 | /* Subroutine */ int dlasd5_(integer *i__, doublereal *d__, doublereal *z__, |
| 26657 | doublereal *delta, doublereal *rho, doublereal *dsigma, doublereal * |
| 26658 | work) |
| 26659 | { |
| 26660 | /* System generated locals */ |
| 26661 | doublereal d__1; |
| 26662 | |
| 26663 | /* Local variables */ |
| 26664 | static doublereal b, c__, w, del, tau, delsq; |
| 26665 | |
| 26666 | |
| 26667 | /* |
| 26668 | -- LAPACK auxiliary routine (version 3.2) -- |
| 26669 | -- LAPACK is a software package provided by Univ. of Tennessee, -- |
| 26670 | -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
| 26671 | November 2006 |
| 26672 | |
| 26673 | |
| 26674 | Purpose |
| 26675 | ======= |
| 26676 | |
| 26677 | This subroutine computes the square root of the I-th eigenvalue |
| 26678 | of a positive symmetric rank-one modification of a 2-by-2 diagonal |
| 26679 | matrix |
| 26680 | |
| 26681 | diag( D ) * diag( D ) + RHO * Z * transpose(Z) . |
| 26682 | |
| 26683 | The diagonal entries in the array D are assumed to satisfy |
| 26684 | |
| 26685 | 0 <= D(i) < D(j) for i < j . |
| 26686 | |
| 26687 | We also assume RHO > 0 and that the Euclidean norm of the vector |
| 26688 | Z is one. |
| 26689 | |
| 26690 | Arguments |
| 26691 | ========= |
| 26692 | |
| 26693 | I (input) INTEGER |
| 26694 | The index of the eigenvalue to be computed. I = 1 or I = 2. |
| 26695 | |
| 26696 | D (input) DOUBLE PRECISION array, dimension ( 2 ) |
| 26697 | The original eigenvalues. We assume 0 <= D(1) < D(2). |
| 26698 | |
| 26699 | Z (input) DOUBLE PRECISION array, dimension ( 2 ) |
| 26700 | The components of the updating vector. |
| 26701 | |
| 26702 | DELTA (output) DOUBLE PRECISION array, dimension ( 2 ) |
| 26703 | Contains (D(j) - sigma_I) in its j-th component. |
| 26704 | The vector DELTA contains the information necessary |
| 26705 | to construct the eigenvectors. |
| 26706 | |
| 26707 | RHO (input) DOUBLE PRECISION |
| 26708 | The scalar in the symmetric updating formula. |
| 26709 | |
| 26710 | DSIGMA (output) DOUBLE PRECISION |
| 26711 | The computed sigma_I, the I-th updated eigenvalue. |
| 26712 | |
| 26713 | WORK (workspace) DOUBLE PRECISION array, dimension ( 2 ) |