Diff for /rpl/lapack/lapack/zlahef_aa.f between versions 1.4 and 1.5

version 1.4, 2018/05/29 07:18:25 version 1.5, 2020/05/21 21:46:07
Line 288 Line 288
 *  *
 *              Swap A(I1, I2+1:N) with A(I2, I2+1:N)  *              Swap A(I1, I2+1:N) with A(I2, I2+1:N)
 *  *
                CALL ZSWAP( M-I2, A( J1+I1-1, I2+1 ), LDA,                 IF( I2.LT.M )
      $                           A( J1+I2-1, I2+1 ), LDA )       $            CALL ZSWAP( M-I2, A( J1+I1-1, I2+1 ), LDA,
        $                              A( J1+I2-1, I2+1 ), LDA )
 *  *
 *              Swap A(I1, I1) with A(I2,I2)  *              Swap A(I1, I1) with A(I2,I2)
 *  *
Line 329 Line 330
 *           Compute L(J+2, J+1) = WORK( 3:N ) / T(J, J+1),  *           Compute L(J+2, J+1) = WORK( 3:N ) / T(J, J+1),
 *            where A(J, J+1) = T(J, J+1) and A(J+2:N, J) = L(J+2:N, J+1)  *            where A(J, J+1) = T(J, J+1) and A(J+2:N, J) = L(J+2:N, J+1)
 *  *
             IF( A( K, J+1 ).NE.ZERO ) THEN              IF( J.LT.(M-1) ) THEN
                ALPHA = ONE / A( K, J+1 )                 IF( A( K, J+1 ).NE.ZERO ) THEN
                CALL ZCOPY( M-J-1, WORK( 3 ), 1, A( K, J+2 ), LDA )                    ALPHA = ONE / A( K, J+1 )
                CALL ZSCAL( M-J-1, ALPHA, A( K, J+2 ), LDA )                    CALL ZCOPY( M-J-1, WORK( 3 ), 1, A( K, J+2 ), LDA )
             ELSE                    CALL ZSCAL( M-J-1, ALPHA, A( K, J+2 ), LDA )
                CALL ZLASET( 'Full', 1, M-J-1, ZERO, ZERO,                 ELSE
      $                      A( K, J+2 ), LDA)                    CALL ZLASET( 'Full', 1, M-J-1, ZERO, ZERO,
        $                         A( K, J+2 ), LDA)
                  END IF
             END IF              END IF
          END IF           END IF
          J = J + 1           J = J + 1
Line 440 Line 443
 *  *
 *              Swap A(I2+1:N, I1) with A(I2+1:N, I2)  *              Swap A(I2+1:N, I1) with A(I2+1:N, I2)
 *  *
                CALL ZSWAP( M-I2, A( I2+1, J1+I1-1 ), 1,                 IF( I2.LT.M )
      $                           A( I2+1, J1+I2-1 ), 1 )       $            CALL ZSWAP( M-I2, A( I2+1, J1+I1-1 ), 1,
        $                              A( I2+1, J1+I2-1 ), 1 )
 *  *
 *              Swap A(I1, I1) with A(I2, I2)  *              Swap A(I1, I1) with A(I2, I2)
 *  *
Line 481 Line 485
 *           Compute L(J+2, J+1) = WORK( 3:N ) / T(J, J+1),  *           Compute L(J+2, J+1) = WORK( 3:N ) / T(J, J+1),
 *            where A(J, J+1) = T(J, J+1) and A(J+2:N, J) = L(J+2:N, J+1)  *            where A(J, J+1) = T(J, J+1) and A(J+2:N, J) = L(J+2:N, J+1)
 *  *
             IF( A( J+1, K ).NE.ZERO ) THEN              IF( J.LT.(M-1) ) THEN
                ALPHA = ONE / A( J+1, K )                 IF( A( J+1, K ).NE.ZERO ) THEN
                CALL ZCOPY( M-J-1, WORK( 3 ), 1, A( J+2, K ), 1 )                    ALPHA = ONE / A( J+1, K )
                CALL ZSCAL( M-J-1, ALPHA, A( J+2, K ), 1 )                    CALL ZCOPY( M-J-1, WORK( 3 ), 1, A( J+2, K ), 1 )
             ELSE                    CALL ZSCAL( M-J-1, ALPHA, A( J+2, K ), 1 )
                CALL ZLASET( 'Full', M-J-1, 1, ZERO, ZERO,                 ELSE
      $                      A( J+2, K ), LDA )                    CALL ZLASET( 'Full', M-J-1, 1, ZERO, ZERO,
        $                         A( J+2, K ), LDA )
                  END IF
             END IF              END IF
          END IF           END IF
          J = J + 1           J = J + 1

Removed from v.1.4  
changed lines
  Added in v.1.5


CVSweb interface <joel.bertrand@systella.fr>