Diff for /rpl/lapack/lapack/dsytri2.f between versions 1.4 and 1.17

version 1.4, 2011/11/21 20:43:05 version 1.17, 2023/08/07 08:39:11
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 DSYTRI2 + dependencies   *> Download DSYTRI2 + dependencies
 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/dsytri2.f">   *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/dsytri2.f">
 *> [TGZ]</a>   *> [TGZ]</a>
 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/dsytri2.f">   *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/dsytri2.f">
 *> [ZIP]</a>   *> [ZIP]</a>
 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/dsytri2.f">   *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/dsytri2.f">
 *> [TXT]</a>  *> [TXT]</a>
 *> \endhtmlonly   *> \endhtmlonly
 *  *
 *  Definition:  *  Definition:
 *  ===========  *  ===========
 *  *
 *       SUBROUTINE DSYTRI2( UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO )  *       SUBROUTINE DSYTRI2( UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO )
 *   *
 *       .. Scalar Arguments ..  *       .. Scalar Arguments ..
 *       CHARACTER          UPLO  *       CHARACTER          UPLO
 *       INTEGER            INFO, LDA, LWORK, N  *       INTEGER            INFO, LDA, LWORK, N
Line 28 Line 28
 *       INTEGER            IPIV( * )  *       INTEGER            IPIV( * )
 *       DOUBLE PRECISION   A( LDA, * ), WORK( * )  *       DOUBLE PRECISION   A( LDA, * ), WORK( * )
 *       ..  *       ..
 *    *
 *  *
 *> \par Purpose:  *> \par Purpose:
 *  =============  *  =============
 *>  *>
 *> \verbatim  *> \verbatim
 *>  *>
 *> DSYTRI2 computes the inverse of a DOUBLE PRECISION hermitian indefinite matrix  *> DSYTRI2 computes the inverse of a DOUBLE PRECISION symmetric indefinite matrix
 *> A using the factorization A = U*D*U**T or A = L*D*L**T computed by  *> A using the factorization A = U*D*U**T or A = L*D*L**T computed by
 *> DSYTRF. DSYTRI2 sets the LEADING DIMENSION of the workspace  *> DSYTRF. DSYTRI2 sets the LEADING DIMENSION of the workspace
 *> before calling DSYTRI2X that actually computes the inverse.  *> before calling DSYTRI2X that actually computes the inverse.
Line 62 Line 62
 *> \param[in,out] A  *> \param[in,out] A
 *> \verbatim  *> \verbatim
 *>          A is DOUBLE PRECISION array, dimension (LDA,N)  *>          A is DOUBLE PRECISION array, dimension (LDA,N)
 *>          On entry, the NB diagonal matrix D and the multipliers  *>          On entry, the block diagonal matrix D and the multipliers
 *>          used to obtain the factor U or L as computed by DSYTRF.  *>          used to obtain the factor U or L as computed by DSYTRF.
 *>  *>
 *>          On exit, if INFO = 0, the (symmetric) inverse of the original  *>          On exit, if INFO = 0, the (symmetric) inverse of the original
Line 82 Line 82
 *> \param[in] IPIV  *> \param[in] IPIV
 *> \verbatim  *> \verbatim
 *>          IPIV is INTEGER array, dimension (N)  *>          IPIV is INTEGER array, dimension (N)
 *>          Details of the interchanges and the NB structure of D  *>          Details of the interchanges and the block structure of D
 *>          as determined by DSYTRF.  *>          as determined by DSYTRF.
 *> \endverbatim  *> \endverbatim
 *>  *>
Line 96 Line 96
 *>          LWORK is INTEGER  *>          LWORK is INTEGER
 *>          The dimension of the array WORK.  *>          The dimension of the array WORK.
 *>          WORK is size >= (N+NB+1)*(NB+3)  *>          WORK is size >= (N+NB+1)*(NB+3)
 *>          If LDWORK = -1, then a workspace query is assumed; the routine  *>          If LWORK = -1, then a workspace query is assumed; the routine
 *>           calculates:  *>           calculates:
 *>              - the optimal size of the WORK array, returns  *>              - the optimal size of the WORK array, returns
 *>          this value as the first entry of the WORK array,  *>          this value as the first entry of the WORK array,
 *>              - and no error message related to LDWORK is issued by XERBLA.  *>              - and no error message related to LWORK is issued by XERBLA.
 *> \endverbatim  *> \endverbatim
 *>  *>
 *> \param[out] INFO  *> \param[out] INFO
Line 115 Line 115
 *  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  
 *  *
 *> \ingroup doubleSYcomputational  *> \ingroup doubleSYcomputational
 *  *
 *  =====================================================================  *  =====================================================================
       SUBROUTINE DSYTRI2( UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO )        SUBROUTINE DSYTRI2( UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO )
 *  *
 *  -- LAPACK computational routine (version 3.4.0) --  *  -- LAPACK computational routine --
 *  -- 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  
 *  *
 *     .. Scalar Arguments ..  *     .. Scalar Arguments ..
       CHARACTER          UPLO        CHARACTER          UPLO
Line 153 Line 150
       EXTERNAL           LSAME, ILAENV        EXTERNAL           LSAME, ILAENV
 *     ..  *     ..
 *     .. External Subroutines ..  *     .. External Subroutines ..
       EXTERNAL           DSYTRI2X        EXTERNAL           DSYTRI, DSYTRI2X, XERBLA
 *     ..  *     ..
 *     .. Executable Statements ..  *     .. Executable Statements ..
 *  *
Line 163 Line 160
       UPPER = LSAME( UPLO, 'U' )        UPPER = LSAME( UPLO, 'U' )
       LQUERY = ( LWORK.EQ.-1 )        LQUERY = ( LWORK.EQ.-1 )
 *     Get blocksize  *     Get blocksize
       NBMAX = ILAENV( 1, 'DSYTRF', UPLO, N, -1, -1, -1 )        NBMAX = ILAENV( 1, 'DSYTRI2', UPLO, N, -1, -1, -1 )
       IF ( NBMAX .GE. N ) THEN        IF ( NBMAX .GE. N ) THEN
          MINSIZE = N           MINSIZE = N
       ELSE        ELSE
Line 192 Line 189
       END IF        END IF
       IF( N.EQ.0 )        IF( N.EQ.0 )
      $   RETURN       $   RETURN
         
       IF( NBMAX .GE. N ) THEN        IF( NBMAX .GE. N ) THEN
          CALL DSYTRI( UPLO, N, A, LDA, IPIV, WORK, INFO )           CALL DSYTRI( UPLO, N, A, LDA, IPIV, WORK, INFO )
       ELSE        ELSE

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


CVSweb interface <joel.bertrand@systella.fr>