Diff for /rpl/lapack/lapack/dgeqrt.f between versions 1.1 and 1.8

version 1.1, 2012/07/31 11:06:35 version 1.8, 2017/06/17 11:06:17
Line 2 Line 2
 *  *
 *  =========== 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 DGEQRT + dependencies   *> Download DGEQRT + dependencies
 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/dgeqrt.f">   *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/dgeqrt.f">
 *> [TGZ]</a>   *> [TGZ]</a>
 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/dgeqrt.f">   *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/dgeqrt.f">
 *> [ZIP]</a>   *> [ZIP]</a>
 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/dgeqrt.f">   *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/dgeqrt.f">
 *> [TXT]</a>  *> [TXT]</a>
 *> \endhtmlonly   *> \endhtmlonly
 *  *
 *  Definition:  *  Definition:
 *  ===========  *  ===========
 *  *
 *       SUBROUTINE DGEQRT( M, N, NB, A, LDA, T, LDT, WORK, INFO )  *       SUBROUTINE DGEQRT( M, N, NB, A, LDA, T, LDT, WORK, INFO )
 *   *
 *       .. Scalar Arguments ..  *       .. Scalar Arguments ..
 *       INTEGER INFO, LDA, LDT, M, N, NB  *       INTEGER INFO, LDA, LDT, M, N, NB
 *       ..  *       ..
 *       .. Array Arguments ..  *       .. Array Arguments ..
 *       DOUBLE PRECISION A( LDA, * ), T( LDT, * ), WORK( * )  *       DOUBLE PRECISION A( LDA, * ), T( LDT, * ), WORK( * )
 *       ..  *       ..
 *    *
 *  *
 *> \par Purpose:  *> \par Purpose:
 *  =============  *  =============
Line 34 Line 34
 *> \verbatim  *> \verbatim
 *>  *>
 *> DGEQRT computes a blocked QR factorization of a real M-by-N matrix A  *> DGEQRT computes a blocked QR factorization of a real M-by-N matrix A
 *> using the compact WY representation of Q.    *> using the compact WY representation of Q.
 *> \endverbatim  *> \endverbatim
 *  *
 *  Arguments:  *  Arguments:
Line 103 Line 103
 *  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 doubleGEcomputational  *> \ingroup doubleGEcomputational
 *  *
Line 130 Line 130
 *>  in the matrix A.  The 1's along the diagonal of V are not stored in A.  *>  in the matrix A.  The 1's along the diagonal of V are not stored in A.
 *>  *>
 *>  Let K=MIN(M,N).  The number of blocks is B = ceiling(K/NB), where each  *>  Let K=MIN(M,N).  The number of blocks is B = ceiling(K/NB), where each
 *>  block is of order NB except for the last block, which is of order   *>  block is of order NB except for the last block, which is of order
 *>  IB = K - (B-1)*NB.  For each of the B blocks, a upper triangular block  *>  IB = K - (B-1)*NB.  For each of the B blocks, a upper triangular block
 *>  reflector factor is computed: T1, T2, ..., TB.  The NB-by-NB (and IB-by-IB   *>  reflector factor is computed: T1, T2, ..., TB.  The NB-by-NB (and IB-by-IB
 *>  for the last block) T's are stored in the NB-by-N matrix T as  *>  for the last block) T's are stored in the NB-by-N matrix T as
 *>  *>
 *>               T = (T1 T2 ... TB).  *>               T = (T1 T2 ... TB).
Line 141 Line 141
 *  =====================================================================  *  =====================================================================
       SUBROUTINE DGEQRT( M, N, NB, A, LDA, T, LDT, WORK, INFO )        SUBROUTINE DGEQRT( M, N, NB, A, LDA, T, LDT, WORK, INFO )
 *  *
 *  -- LAPACK computational routine (version 3.4.0) --  *  -- LAPACK computational 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 ..
       INTEGER INFO, LDA, LDT, M, N, NB        INTEGER INFO, LDA, LDT, M, N, NB
Line 173 Line 173
          INFO = -1           INFO = -1
       ELSE IF( N.LT.0 ) THEN        ELSE IF( N.LT.0 ) THEN
          INFO = -2           INFO = -2
       ELSE IF( NB.LT.1 .OR. NB.GT.MIN(M,N) ) THEN        ELSE IF( NB.LT.1 .OR. ( NB.GT.MIN(M,N) .AND. MIN(M,N).GT.0 ) )THEN
          INFO = -3           INFO = -3
       ELSE IF( LDA.LT.MAX( 1, M ) ) THEN        ELSE IF( LDA.LT.MAX( 1, M ) ) THEN
          INFO = -5           INFO = -5
Line 194 Line 194
 *  *
       DO I = 1, K,  NB        DO I = 1, K,  NB
          IB = MIN( K-I+1, NB )           IB = MIN( K-I+1, NB )
 *       *
 *     Compute the QR factorization of the current block A(I:M,I:I+IB-1)  *     Compute the QR factorization of the current block A(I:M,I:I+IB-1)
 *  *
          IF( USE_RECURSIVE_QR ) THEN           IF( USE_RECURSIVE_QR ) THEN
Line 207 Line 207
 *     Update by applying H**T to A(I:M,I+IB:N) from the left  *     Update by applying H**T to A(I:M,I+IB:N) from the left
 *  *
             CALL DLARFB( 'L', 'T', 'F', 'C', M-I+1, N-I-IB+1, IB,              CALL DLARFB( 'L', 'T', 'F', 'C', M-I+1, N-I-IB+1, IB,
      $                   A( I, I ), LDA, T( 1, I ), LDT,        $                   A( I, I ), LDA, T( 1, I ), LDT,
      $                   A( I, I+IB ), LDA, WORK , N-I-IB+1 )       $                   A( I, I+IB ), LDA, WORK , N-I-IB+1 )
          END IF           END IF
       END DO        END DO
       RETURN        RETURN
 *       *
 *     End of DGEQRT  *     End of DGEQRT
 *  *
       END        END

Removed from v.1.1  
changed lines
  Added in v.1.8


CVSweb interface <joel.bertrand@systella.fr>