Diff for /rpl/lapack/lapack/dhgeqz.f between versions 1.13 and 1.14

version 1.13, 2012/12/14 14:22:30 version 1.14, 2014/01/27 09:24:34
Line 282 Line 282
 *> \author Univ. of Colorado Denver   *> \author Univ. of Colorado Denver 
 *> \author NAG Ltd.   *> \author NAG Ltd. 
 *  *
 *> \date April 2012  *> \date November 2013
 *  *
 *> \ingroup doubleGEcomputational  *> \ingroup doubleGEcomputational
 *  *
Line 304 Line 304
      $                   ALPHAR, ALPHAI, BETA, Q, LDQ, Z, LDZ, WORK,       $                   ALPHAR, ALPHAI, BETA, Q, LDQ, Z, LDZ, WORK,
      $                   LWORK, INFO )       $                   LWORK, INFO )
 *  *
 *  -- LAPACK computational routine (version 3.4.1) --  *  -- LAPACK computational routine (version 3.5.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..--
 *     April 2012  *     November 2013
 *  *
 *     .. Scalar Arguments ..  *     .. Scalar Arguments ..
       CHARACTER          COMPQ, COMPZ, JOB        CHARACTER          COMPQ, COMPZ, JOB
Line 739 Line 739
 *           Exceptional shift.  Chosen for no particularly good reason.  *           Exceptional shift.  Chosen for no particularly good reason.
 *           (Single shift only.)  *           (Single shift only.)
 *  *
             IF( ( DBLE( MAXIT )*SAFMIN )*ABS( H( ILAST-1, ILAST ) ).LT.              IF( ( DBLE( MAXIT )*SAFMIN )*ABS( H( ILAST, ILAST-1 ) ).LT.
      $          ABS( T( ILAST-1, ILAST-1 ) ) ) THEN       $          ABS( T( ILAST-1, ILAST-1 ) ) ) THEN
                ESHIFT = ESHIFT + H( ILAST, ILAST-1 ) /                 ESHIFT = H( ILAST, ILAST-1 ) /
      $                  T( ILAST-1, ILAST-1 )       $                  T( ILAST-1, ILAST-1 )
             ELSE              ELSE
                ESHIFT = ESHIFT + ONE / ( SAFMIN*DBLE( MAXIT ) )                 ESHIFT = ESHIFT + ONE / ( SAFMIN*DBLE( MAXIT ) )
Line 759 Line 759
      $                  T( ILAST-1, ILAST-1 ), LDT, SAFMIN*SAFETY, S1,       $                  T( ILAST-1, ILAST-1 ), LDT, SAFMIN*SAFETY, S1,
      $                  S2, WR, WR2, WI )       $                  S2, WR, WR2, WI )
 *  *
               IF ( ABS( (WR/S1)*T( ILAST, ILAST ) - H( ILAST, ILAST ) )
        $         .GT. ABS( (WR2/S2)*T( ILAST, ILAST ) 
        $         - H( ILAST, ILAST ) ) ) THEN
                  TEMP = WR
                  WR = WR2
                  WR2 = TEMP
                  TEMP = S1
                  S1 = S2
                  S2 = TEMP
               END IF
             TEMP = MAX( S1, SAFMIN*MAX( ONE, ABS( WR ), ABS( WI ) ) )              TEMP = MAX( S1, SAFMIN*MAX( ONE, ABS( WR ), ABS( WI ) ) )
             IF( WI.NE.ZERO )              IF( WI.NE.ZERO )
      $         GO TO 200       $         GO TO 200

Removed from v.1.13  
changed lines
  Added in v.1.14


CVSweb interface <joel.bertrand@systella.fr>