--- rpl/lapack/lapack/dlasd5.f 2010/01/26 15:22:46 1.1.1.1
+++ rpl/lapack/lapack/dlasd5.f 2012/12/14 12:30:25 1.11
@@ -1,9 +1,125 @@
+*> \brief \b DLASD5 computes the square root of the i-th eigenvalue of a positive symmetric rank-one modification of a 2-by-2 diagonal matrix. Used by sbdsdc.
+*
+* =========== DOCUMENTATION ===========
+*
+* Online html documentation available at
+* http://www.netlib.org/lapack/explore-html/
+*
+*> \htmlonly
+*> Download DLASD5 + dependencies
+*>
+*> [TGZ]
+*>
+*> [ZIP]
+*>
+*> [TXT]
+*> \endhtmlonly
+*
+* Definition:
+* ===========
+*
+* SUBROUTINE DLASD5( I, D, Z, DELTA, RHO, DSIGMA, WORK )
+*
+* .. Scalar Arguments ..
+* INTEGER I
+* DOUBLE PRECISION DSIGMA, RHO
+* ..
+* .. Array Arguments ..
+* DOUBLE PRECISION D( 2 ), DELTA( 2 ), WORK( 2 ), Z( 2 )
+* ..
+*
+*
+*> \par Purpose:
+* =============
+*>
+*> \verbatim
+*>
+*> This subroutine computes the square root of the I-th eigenvalue
+*> of a positive symmetric rank-one modification of a 2-by-2 diagonal
+*> matrix
+*>
+*> diag( D ) * diag( D ) + RHO * Z * transpose(Z) .
+*>
+*> The diagonal entries in the array D are assumed to satisfy
+*>
+*> 0 <= D(i) < D(j) for i < j .
+*>
+*> We also assume RHO > 0 and that the Euclidean norm of the vector
+*> Z is one.
+*> \endverbatim
+*
+* Arguments:
+* ==========
+*
+*> \param[in] I
+*> \verbatim
+*> I is INTEGER
+*> The index of the eigenvalue to be computed. I = 1 or I = 2.
+*> \endverbatim
+*>
+*> \param[in] D
+*> \verbatim
+*> D is DOUBLE PRECISION array, dimension ( 2 )
+*> The original eigenvalues. We assume 0 <= D(1) < D(2).
+*> \endverbatim
+*>
+*> \param[in] Z
+*> \verbatim
+*> Z is DOUBLE PRECISION array, dimension ( 2 )
+*> The components of the updating vector.
+*> \endverbatim
+*>
+*> \param[out] DELTA
+*> \verbatim
+*> DELTA is DOUBLE PRECISION array, dimension ( 2 )
+*> Contains (D(j) - sigma_I) in its j-th component.
+*> The vector DELTA contains the information necessary
+*> to construct the eigenvectors.
+*> \endverbatim
+*>
+*> \param[in] RHO
+*> \verbatim
+*> RHO is DOUBLE PRECISION
+*> The scalar in the symmetric updating formula.
+*> \endverbatim
+*>
+*> \param[out] DSIGMA
+*> \verbatim
+*> DSIGMA is DOUBLE PRECISION
+*> The computed sigma_I, the I-th updated eigenvalue.
+*> \endverbatim
+*>
+*> \param[out] WORK
+*> \verbatim
+*> WORK is DOUBLE PRECISION array, dimension ( 2 )
+*> WORK contains (D(j) + sigma_I) in its j-th component.
+*> \endverbatim
+*
+* Authors:
+* ========
+*
+*> \author Univ. of Tennessee
+*> \author Univ. of California Berkeley
+*> \author Univ. of Colorado Denver
+*> \author NAG Ltd.
+*
+*> \date September 2012
+*
+*> \ingroup auxOTHERauxiliary
+*
+*> \par Contributors:
+* ==================
+*>
+*> Ren-Cang Li, Computer Science Division, University of California
+*> at Berkeley, USA
+*>
+* =====================================================================
SUBROUTINE DLASD5( I, D, Z, DELTA, RHO, DSIGMA, WORK )
*
-* -- LAPACK auxiliary routine (version 3.2) --
+* -- LAPACK auxiliary routine (version 3.4.2) --
* -- LAPACK is a software package provided by Univ. of Tennessee, --
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
-* November 2006
+* September 2012
*
* .. Scalar Arguments ..
INTEGER I
@@ -13,55 +129,6 @@
DOUBLE PRECISION D( 2 ), DELTA( 2 ), WORK( 2 ), Z( 2 )
* ..
*
-* Purpose
-* =======
-*
-* This subroutine computes the square root of the I-th eigenvalue
-* of a positive symmetric rank-one modification of a 2-by-2 diagonal
-* matrix
-*
-* diag( D ) * diag( D ) + RHO * Z * transpose(Z) .
-*
-* The diagonal entries in the array D are assumed to satisfy
-*
-* 0 <= D(i) < D(j) for i < j .
-*
-* We also assume RHO > 0 and that the Euclidean norm of the vector
-* Z is one.
-*
-* Arguments
-* =========
-*
-* I (input) INTEGER
-* The index of the eigenvalue to be computed. I = 1 or I = 2.
-*
-* D (input) DOUBLE PRECISION array, dimension ( 2 )
-* The original eigenvalues. We assume 0 <= D(1) < D(2).
-*
-* Z (input) DOUBLE PRECISION array, dimension ( 2 )
-* The components of the updating vector.
-*
-* DELTA (output) DOUBLE PRECISION array, dimension ( 2 )
-* Contains (D(j) - sigma_I) in its j-th component.
-* The vector DELTA contains the information necessary
-* to construct the eigenvectors.
-*
-* RHO (input) DOUBLE PRECISION
-* The scalar in the symmetric updating formula.
-*
-* DSIGMA (output) DOUBLE PRECISION
-* The computed sigma_I, the I-th updated eigenvalue.
-*
-* WORK (workspace) DOUBLE PRECISION array, dimension ( 2 )
-* WORK contains (D(j) + sigma_I) in its j-th component.
-*
-* Further Details
-* ===============
-*
-* Based on contributions by
-* Ren-Cang Li, Computer Science Division, University of California
-* at Berkeley, USA
-*
* =====================================================================
*
* .. Parameters ..