Diff for /rpl/lapack/lapack/dgesc2.f between versions 1.4 and 1.21

version 1.4, 2010/08/06 15:32:24 version 1.21, 2023/08/07 08:38:49
Line 1 Line 1
   *> \brief \b DGESC2 solves a system of linear equations using the LU factorization with complete pivoting computed by sgetc2.
   *
   *  =========== DOCUMENTATION ===========
   *
   * Online html documentation available at
   *            http://www.netlib.org/lapack/explore-html/
   *
   *> \htmlonly
   *> Download DGESC2 + dependencies
   *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/dgesc2.f">
   *> [TGZ]</a>
   *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/dgesc2.f">
   *> [ZIP]</a>
   *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/dgesc2.f">
   *> [TXT]</a>
   *> \endhtmlonly
   *
   *  Definition:
   *  ===========
   *
   *       SUBROUTINE DGESC2( N, A, LDA, RHS, IPIV, JPIV, SCALE )
   *
   *       .. Scalar Arguments ..
   *       INTEGER            LDA, N
   *       DOUBLE PRECISION   SCALE
   *       ..
   *       .. Array Arguments ..
   *       INTEGER            IPIV( * ), JPIV( * )
   *       DOUBLE PRECISION   A( LDA, * ), RHS( * )
   *       ..
   *
   *
   *> \par Purpose:
   *  =============
   *>
   *> \verbatim
   *>
   *> DGESC2 solves a system of linear equations
   *>
   *>           A * X = scale* RHS
   *>
   *> with a general N-by-N matrix A using the LU factorization with
   *> complete pivoting computed by DGETC2.
   *> \endverbatim
   *
   *  Arguments:
   *  ==========
   *
   *> \param[in] N
   *> \verbatim
   *>          N is INTEGER
   *>          The order of the matrix A.
   *> \endverbatim
   *>
   *> \param[in] A
   *> \verbatim
   *>          A is DOUBLE PRECISION array, dimension (LDA,N)
   *>          On entry, the  LU part of the factorization of the n-by-n
   *>          matrix A computed by DGETC2:  A = P * L * U * Q
   *> \endverbatim
   *>
   *> \param[in] LDA
   *> \verbatim
   *>          LDA is INTEGER
   *>          The leading dimension of the array A.  LDA >= max(1, N).
   *> \endverbatim
   *>
   *> \param[in,out] RHS
   *> \verbatim
   *>          RHS is DOUBLE PRECISION array, dimension (N).
   *>          On entry, the right hand side vector b.
   *>          On exit, the solution vector X.
   *> \endverbatim
   *>
   *> \param[in] IPIV
   *> \verbatim
   *>          IPIV is INTEGER array, dimension (N).
   *>          The pivot indices; for 1 <= i <= N, row i of the
   *>          matrix has been interchanged with row IPIV(i).
   *> \endverbatim
   *>
   *> \param[in] JPIV
   *> \verbatim
   *>          JPIV is INTEGER array, dimension (N).
   *>          The pivot indices; for 1 <= j <= N, column j of the
   *>          matrix has been interchanged with column JPIV(j).
   *> \endverbatim
   *>
   *> \param[out] SCALE
   *> \verbatim
   *>          SCALE is DOUBLE PRECISION
   *>          On exit, SCALE contains the scale factor. SCALE is chosen
   *>          0 <= SCALE <= 1 to prevent overflow in the solution.
   *> \endverbatim
   *
   *  Authors:
   *  ========
   *
   *> \author Univ. of Tennessee
   *> \author Univ. of California Berkeley
   *> \author Univ. of Colorado Denver
   *> \author NAG Ltd.
   *
   *> \ingroup doubleGEauxiliary
   *
   *> \par Contributors:
   *  ==================
   *>
   *>     Bo Kagstrom and Peter Poromaa, Department of Computing Science,
   *>     Umea University, S-901 87 Umea, Sweden.
   *
   *  =====================================================================
       SUBROUTINE DGESC2( N, A, LDA, RHS, IPIV, JPIV, SCALE )        SUBROUTINE DGESC2( N, A, LDA, RHS, IPIV, JPIV, SCALE )
 *  *
 *  -- LAPACK auxiliary routine (version 3.2) --  *  -- LAPACK auxiliary 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 2006  
 *  *
 *     .. Scalar Arguments ..  *     .. Scalar Arguments ..
       INTEGER            LDA, N        INTEGER            LDA, N
Line 14 Line 125
       DOUBLE PRECISION   A( LDA, * ), RHS( * )        DOUBLE PRECISION   A( LDA, * ), RHS( * )
 *     ..  *     ..
 *  *
 *  Purpose  
 *  =======  
 *  
 *  DGESC2 solves a system of linear equations  
 *  
 *            A * X = scale* RHS  
 *  
 *  with a general N-by-N matrix A using the LU factorization with  
 *  complete pivoting computed by DGETC2.  
 *  
 *  Arguments  
 *  =========  
 *  
 *  N       (input) INTEGER  
 *          The order of the matrix A.  
 *  
 *  A       (input) DOUBLE PRECISION array, dimension (LDA,N)  
 *          On entry, the  LU part of the factorization of the n-by-n  
 *          matrix A computed by DGETC2:  A = P * L * U * Q  
 *  
 *  LDA     (input) INTEGER  
 *          The leading dimension of the array A.  LDA >= max(1, N).  
 *  
 *  RHS     (input/output) DOUBLE PRECISION array, dimension (N).  
 *          On entry, the right hand side vector b.  
 *          On exit, the solution vector X.  
 *  
 *  IPIV    (input) INTEGER array, dimension (N).  
 *          The pivot indices; for 1 <= i <= N, row i of the  
 *          matrix has been interchanged with row IPIV(i).  
 *  
 *  JPIV    (input) INTEGER array, dimension (N).  
 *          The pivot indices; for 1 <= j <= N, column j of the  
 *          matrix has been interchanged with column JPIV(j).  
 *  
 *  SCALE    (output) DOUBLE PRECISION  
 *           On exit, SCALE contains the scale factor. SCALE is chosen  
 *           0 <= SCALE <= 1 to prevent owerflow in the solution.  
 *  
 *  Further Details  
 *  ===============  
 *  
 *  Based on contributions by  
 *     Bo Kagstrom and Peter Poromaa, Department of Computing Science,  
 *     Umea University, S-901 87 Umea, Sweden.  
 *  
 *  =====================================================================  *  =====================================================================
 *  *
 *     .. Parameters ..  *     .. Parameters ..
Line 71 Line 136
       DOUBLE PRECISION   BIGNUM, EPS, SMLNUM, TEMP        DOUBLE PRECISION   BIGNUM, EPS, SMLNUM, TEMP
 *     ..  *     ..
 *     .. External Subroutines ..  *     .. External Subroutines ..
       EXTERNAL           DLASWP, DSCAL        EXTERNAL           DLASWP, DSCAL, DLABAD
 *     ..  *     ..
 *     .. External Functions ..  *     .. External Functions ..
       INTEGER            IDAMAX        INTEGER            IDAMAX
Line 83 Line 148
 *     ..  *     ..
 *     .. Executable Statements ..  *     .. Executable Statements ..
 *  *
 *      Set constant to control owerflow  *      Set constant to control overflow
 *  *
       EPS = DLAMCH( 'P' )        EPS = DLAMCH( 'P' )
       SMLNUM = DLAMCH( 'S' ) / EPS        SMLNUM = DLAMCH( 'S' ) / EPS

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


CVSweb interface <joel.bertrand@systella.fr>