Diff for /rpl/lapack/lapack/dtgex2.f between versions 1.12 and 1.20

version 1.12, 2012/08/22 09:48:27 version 1.20, 2018/05/29 07:18:10
Line 1 Line 1
 *> \brief \b DTGEX2  *> \brief \b DTGEX2 swaps adjacent diagonal blocks in an upper (quasi) triangular matrix pair by an orthogonal equivalence transformation.
 *  *
 *  =========== DOCUMENTATION ===========  *  =========== DOCUMENTATION ===========
 *  *
 * Online html documentation available at   * Online html documentation available at
 *            http://www.netlib.org/lapack/explore-html/   *            http://www.netlib.org/lapack/explore-html/
 *  *
 *> \htmlonly  *> \htmlonly
 *> Download DTGEX2 + dependencies   *> Download DTGEX2 + dependencies
 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/dtgex2.f">   *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/dtgex2.f">
 *> [TGZ]</a>   *> [TGZ]</a>
 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/dtgex2.f">   *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/dtgex2.f">
 *> [ZIP]</a>   *> [ZIP]</a>
 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/dtgex2.f">   *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/dtgex2.f">
 *> [TXT]</a>  *> [TXT]</a>
 *> \endhtmlonly   *> \endhtmlonly
 *  *
 *  Definition:  *  Definition:
 *  ===========  *  ===========
 *  *
 *       SUBROUTINE DTGEX2( WANTQ, WANTZ, N, A, LDA, B, LDB, Q, LDQ, Z,  *       SUBROUTINE DTGEX2( WANTQ, WANTZ, N, A, LDA, B, LDB, Q, LDQ, Z,
 *                          LDZ, J1, N1, N2, WORK, LWORK, INFO )  *                          LDZ, J1, N1, N2, WORK, LWORK, INFO )
 *   *
 *       .. Scalar Arguments ..  *       .. Scalar Arguments ..
 *       LOGICAL            WANTQ, WANTZ  *       LOGICAL            WANTQ, WANTZ
 *       INTEGER            INFO, J1, LDA, LDB, LDQ, LDZ, LWORK, N, N1, N2  *       INTEGER            INFO, J1, LDA, LDB, LDQ, LDZ, LWORK, N, N1, N2
Line 29 Line 29
 *       DOUBLE PRECISION   A( LDA, * ), B( LDB, * ), Q( LDQ, * ),  *       DOUBLE PRECISION   A( LDA, * ), B( LDB, * ), Q( LDQ, * ),
 *      $                   WORK( * ), Z( LDZ, * )  *      $                   WORK( * ), Z( LDZ, * )
 *       ..  *       ..
 *    *
 *  *
 *> \par Purpose:  *> \par Purpose:
 *  =============  *  =============
Line 176 Line 176
 *  Authors:  *  Authors:
 *  ========  *  ========
 *  *
 *> \author Univ. of Tennessee   *> \author Univ. of Tennessee
 *> \author Univ. of California Berkeley   *> \author Univ. of California Berkeley
 *> \author Univ. of Colorado Denver   *> \author Univ. of Colorado Denver
 *> \author NAG Ltd.   *> \author NAG Ltd.
 *  *
 *> \date November 2011  *> \date December 2016
 *  *
 *> \ingroup doubleGEauxiliary  *> \ingroup doubleGEauxiliary
 *  *
Line 221 Line 221
       SUBROUTINE DTGEX2( WANTQ, WANTZ, N, A, LDA, B, LDB, Q, LDQ, Z,        SUBROUTINE DTGEX2( WANTQ, WANTZ, N, A, LDA, B, LDB, Q, LDQ, Z,
      $                   LDZ, J1, N1, N2, WORK, LWORK, INFO )       $                   LDZ, J1, N1, N2, WORK, LWORK, INFO )
 *  *
 *  -- LAPACK auxiliary routine (version 3.4.0) --  *  -- LAPACK auxiliary routine (version 3.7.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  *     December 2016
 *  *
 *     .. Scalar Arguments ..  *     .. Scalar Arguments ..
       LOGICAL            WANTQ, WANTZ        LOGICAL            WANTQ, WANTZ
Line 314 Line 314
       CALL DLASSQ( M*M, WORK, 1, DSCALE, DSUM )        CALL DLASSQ( M*M, WORK, 1, DSCALE, DSUM )
       DNORM = DSCALE*SQRT( DSUM )        DNORM = DSCALE*SQRT( DSUM )
 *  *
 *     THRES has been changed from   *     THRES has been changed from
 *        THRESH = MAX( TEN*EPS*SA, SMLNUM )  *        THRESH = MAX( TEN*EPS*SA, SMLNUM )
 *     to  *     to
 *        THRESH = MAX( TWENTY*EPS*SA, SMLNUM )  *        THRESH = MAX( TWENTY*EPS*SA, SMLNUM )
Line 595 Line 595
 *  *
 *        Standardize existing 2-by-2 blocks.  *        Standardize existing 2-by-2 blocks.
 *  *
          DO 50 I = 1, M*M           CALL DLASET( 'Full', M, M, ZERO, ZERO, WORK, M )
             WORK(I) = ZERO  
    50    CONTINUE  
          WORK( 1 ) = ONE           WORK( 1 ) = ONE
          T( 1, 1 ) = ONE           T( 1, 1 ) = ONE
          IDUM = LWORK - M*M - 2           IDUM = LWORK - M*M - 2
Line 668 Line 666
      $                  A( J1, I ), LDA, ZERO, WORK, M )       $                  A( J1, I ), LDA, ZERO, WORK, M )
             CALL DLACPY( 'Full', M, N-I+1, WORK, M, A( J1, I ), LDA )              CALL DLACPY( 'Full', M, N-I+1, WORK, M, A( J1, I ), LDA )
             CALL DGEMM( 'T', 'N', M, N-I+1, M, ONE, LI, LDST,              CALL DGEMM( 'T', 'N', M, N-I+1, M, ONE, LI, LDST,
      $                  B( J1, I ), LDA, ZERO, WORK, M )       $                  B( J1, I ), LDB, ZERO, WORK, M )
             CALL DLACPY( 'Full', M, N-I+1, WORK, M, B( J1, I ), LDB )              CALL DLACPY( 'Full', M, N-I+1, WORK, M, B( J1, I ), LDB )
          END IF           END IF
          I = J1 - 1           I = J1 - 1

Removed from v.1.12  
changed lines
  Added in v.1.20


CVSweb interface <joel.bertrand@systella.fr>