Diff for /rpl/lapack/lapack/zhetrf_aa.f between versions 1.2 and 1.3

version 1.2, 2017/06/17 11:06:49 version 1.3, 2018/05/29 06:55:23
Line 114 Line 114
 *> \verbatim  *> \verbatim
 *>          INFO is INTEGER  *>          INFO is INTEGER
 *>          = 0:  successful exit  *>          = 0:  successful exit
 *>          < 0:  if INFO = -i, the i-th argument had an illegal value  *>          < 0:  if INFO = -i, the i-th argument had an illegal value.
 *>          > 0:  if INFO = i, D(i,i) is exactly zero.  The factorization  
 *>                has been completed, but the block diagonal matrix D is  
 *>                exactly singular, and division by zero will occur if it  
 *>                is used to solve a system of equations.  
 *> \endverbatim  *> \endverbatim
 *  *
 *  Authors:  *  Authors:
Line 129 Line 125
 *> \author Univ. of Colorado Denver  *> \author Univ. of Colorado Denver
 *> \author NAG Ltd.  *> \author NAG Ltd.
 *  *
 *> \date December 2016  *> \date November 2017
 *  *
 *> \ingroup complex16HEcomputational  *> \ingroup complex16HEcomputational
 *  *
 *  =====================================================================  *  =====================================================================
       SUBROUTINE ZHETRF_AA( UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO)        SUBROUTINE ZHETRF_AA( UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO)
 *  *
 *  -- LAPACK computational routine (version 3.7.0) --  *  -- LAPACK computational routine (version 3.8.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..--
 *     December 2016  *     November 2017
 *  *
       IMPLICIT NONE        IMPLICIT NONE
 *  *
Line 159 Line 155
 *  *
 *     .. Local Scalars ..  *     .. Local Scalars ..
       LOGICAL      LQUERY, UPPER        LOGICAL      LQUERY, UPPER
       INTEGER      J, LWKOPT, IINFO        INTEGER      J, LWKOPT
       INTEGER      NB, MJ, NJ, K1, K2, J1, J2, J3, JB        INTEGER      NB, MJ, NJ, K1, K2, J1, J2, J3, JB
       COMPLEX*16   ALPHA        COMPLEX*16   ALPHA
 *     ..  *     ..
Line 169 Line 165
       EXTERNAL     LSAME, ILAENV        EXTERNAL     LSAME, ILAENV
 *     ..  *     ..
 *     .. External Subroutines ..  *     .. External Subroutines ..
       EXTERNAL     XERBLA        EXTERNAL     ZLAHEF_AA, ZGEMM, ZGEMV, ZCOPY, ZSCAL, ZSWAP, XERBLA
 *     ..  *     ..
 *     .. Intrinsic Functions ..  *     .. Intrinsic Functions ..
       INTRINSIC    DBLE, DCONJG, MAX        INTRINSIC    DBLE, DCONJG, MAX
Line 178 Line 174
 *  *
 *     Determine the block size  *     Determine the block size
 *  *
       NB = ILAENV( 1, 'ZHETRF', UPLO, N, -1, -1, -1 )        NB = ILAENV( 1, 'ZHETRF_AA', UPLO, N, -1, -1, -1 )
 *  *
 *     Test the input parameters.  *     Test the input parameters.
 *  *
Line 215 Line 211
       IPIV( 1 ) = 1        IPIV( 1 ) = 1
       IF ( N.EQ.1 ) THEN        IF ( N.EQ.1 ) THEN
          A( 1, 1 ) = DBLE( A( 1, 1 ) )           A( 1, 1 ) = DBLE( A( 1, 1 ) )
          IF ( A( 1, 1 ).EQ.ZERO ) THEN  
             INFO = 1  
          END IF  
          RETURN           RETURN
       END IF        END IF
 *  *
 *     Adjubst block size based on the workspace size  *     Adjust block size based on the workspace size
 *  *
       IF( LWORK.LT.((1+NB)*N) ) THEN        IF( LWORK.LT.((1+NB)*N) ) THEN
          NB = ( LWORK-N ) / N           NB = ( LWORK-N ) / N
Line 261 Line 254
 *  *
          CALL ZLAHEF_AA( UPLO, 2-K1, N-J, JB,           CALL ZLAHEF_AA( UPLO, 2-K1, N-J, JB,
      $                      A( MAX(1, J), J+1 ), LDA,       $                      A( MAX(1, J), J+1 ), LDA,
      $                      IPIV( J+1 ), WORK, N, WORK( N*NB+1 ),       $                      IPIV( J+1 ), WORK, N, WORK( N*NB+1 ) )
      $                      IINFO )  
          IF( (IINFO.GT.0) .AND. (INFO.EQ.0) ) THEN  
              INFO = IINFO+J  
          ENDIF  
 *  *
 *        Ajust IPIV and apply it back (J-th step picks (J+1)-th pivot)  *        Ajust IPIV and apply it back (J-th step picks (J+1)-th pivot)
 *  *
Line 385 Line 374
 *  *
          CALL ZLAHEF_AA( UPLO, 2-K1, N-J, JB,           CALL ZLAHEF_AA( UPLO, 2-K1, N-J, JB,
      $                      A( J+1, MAX(1, J) ), LDA,       $                      A( J+1, MAX(1, J) ), LDA,
      $                      IPIV( J+1 ), WORK, N, WORK( N*NB+1 ), IINFO)       $                      IPIV( J+1 ), WORK, N, WORK( N*NB+1 ) )
          IF( (IINFO.GT.0) .AND. (INFO.EQ.0) ) THEN  
             INFO = IINFO+J  
          ENDIF  
 *  *
 *        Ajust IPIV and apply it back (J-th step picks (J+1)-th pivot)  *        Ajust IPIV and apply it back (J-th step picks (J+1)-th pivot)
 *  *

Removed from v.1.2  
changed lines
  Added in v.1.3


CVSweb interface <joel.bertrand@systella.fr>