Diff for /rpl/lapack/lapack/dlaed6.f between versions 1.9 and 1.16

version 1.9, 2011/11/21 20:42:54 version 1.16, 2015/11/26 11:44:17
Line 1 Line 1
 *> \brief \b DLAED6  *> \brief \b DLAED6 used by sstedc. Computes one Newton step in solution of the secular equation.
 *  *
 *  =========== DOCUMENTATION ===========  *  =========== DOCUMENTATION ===========
 *  *
Line 115 Line 115
 *> \author Univ. of Colorado Denver   *> \author Univ. of Colorado Denver 
 *> \author NAG Ltd.   *> \author NAG Ltd. 
 *  *
 *> \date November 2011  *> \date November 2015
 *  *
 *> \ingroup auxOTHERcomputational  *> \ingroup auxOTHERcomputational
 *  *
Line 140 Line 140
 *  =====================================================================  *  =====================================================================
       SUBROUTINE DLAED6( KNITER, ORGATI, RHO, D, Z, FINIT, TAU, INFO )        SUBROUTINE DLAED6( KNITER, ORGATI, RHO, D, Z, FINIT, TAU, INFO )
 *  *
 *  -- LAPACK computational routine (version 3.4.0) --  *  -- LAPACK computational routine (version 3.6.0) --
 *  -- LAPACK is a software package provided by Univ. of Tennessee,    --  *  -- LAPACK is a software package provided by Univ. of Tennessee,    --
 *  -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--  *  -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
 *     November 2011  *     November 2015
 *  *
 *     .. Scalar Arguments ..  *     .. Scalar Arguments ..
       LOGICAL            ORGATI        LOGICAL            ORGATI
Line 370 Line 370
          DF = ZERO           DF = ZERO
          DDF = ZERO           DDF = ZERO
          DO 40 I = 1, 3           DO 40 I = 1, 3
             TEMP = ONE / ( DSCALE( I )-TAU )              IF ( ( DSCALE( I )-TAU ).NE.ZERO ) THEN
             TEMP1 = ZSCALE( I )*TEMP                 TEMP = ONE / ( DSCALE( I )-TAU )
             TEMP2 = TEMP1*TEMP                 TEMP1 = ZSCALE( I )*TEMP
             TEMP3 = TEMP2*TEMP                 TEMP2 = TEMP1*TEMP
             TEMP4 = TEMP1 / DSCALE( I )                 TEMP3 = TEMP2*TEMP
             FC = FC + TEMP4                 TEMP4 = TEMP1 / DSCALE( I )
             ERRETM = ERRETM + ABS( TEMP4 )                 FC = FC + TEMP4
             DF = DF + TEMP2                 ERRETM = ERRETM + ABS( TEMP4 )
             DDF = DDF + TEMP3                 DF = DF + TEMP2
                  DDF = DDF + TEMP3
               ELSE
                  GO TO 60
               END IF
    40    CONTINUE     40    CONTINUE
          F = FINIT + TAU*FC           F = FINIT + TAU*FC
          ERRETM = EIGHT*( ABS( FINIT )+ABS( TAU )*ERRETM ) +           ERRETM = EIGHT*( ABS( FINIT )+ABS( TAU )*ERRETM ) +
      $            ABS( TAU )*DF       $            ABS( TAU )*DF
          IF( ABS( F ).LE.EPS*ERRETM )           IF( ( ABS( F ).LE.FOUR*EPS*ERRETM ) .OR.
        $      ( (UBD-LBD).LE.FOUR*EPS*ABS(TAU) )  )
      $      GO TO 60       $      GO TO 60
          IF( F .LE. ZERO )THEN           IF( F .LE. ZERO )THEN
             LBD = TAU              LBD = TAU

Removed from v.1.9  
changed lines
  Added in v.1.16


CVSweb interface <joel.bertrand@systella.fr>