version 1.8, 2011/11/21 20:42:56
|
version 1.19, 2020/05/21 21:46:00
|
Line 1
|
Line 1
|
*> \brief \b DLAQR1 |
*> \brief \b DLAQR1 sets a scalar multiple of the first column of the product of 2-by-2 or 3-by-3 matrix H and specified shifts. |
* |
* |
* =========== 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 DLAQR1 + dependencies |
*> Download DLAQR1 + dependencies |
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/dlaqr1.f"> |
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/dlaqr1.f"> |
*> [TGZ]</a> |
*> [TGZ]</a> |
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/dlaqr1.f"> |
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/dlaqr1.f"> |
*> [ZIP]</a> |
*> [ZIP]</a> |
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/dlaqr1.f"> |
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/dlaqr1.f"> |
*> [TXT]</a> |
*> [TXT]</a> |
*> \endhtmlonly |
*> \endhtmlonly |
* |
* |
* Definition: |
* Definition: |
* =========== |
* =========== |
* |
* |
* SUBROUTINE DLAQR1( N, H, LDH, SR1, SI1, SR2, SI2, V ) |
* SUBROUTINE DLAQR1( N, H, LDH, SR1, SI1, SR2, SI2, V ) |
* |
* |
* .. Scalar Arguments .. |
* .. Scalar Arguments .. |
* DOUBLE PRECISION SI1, SI2, SR1, SR2 |
* DOUBLE PRECISION SI1, SI2, SR1, SR2 |
* INTEGER LDH, N |
* INTEGER LDH, N |
Line 27
|
Line 27
|
* .. Array Arguments .. |
* .. Array Arguments .. |
* DOUBLE PRECISION H( LDH, * ), V( * ) |
* DOUBLE PRECISION H( LDH, * ), V( * ) |
* .. |
* .. |
* |
* |
* |
* |
*> \par Purpose: |
*> \par Purpose: |
* ============= |
* ============= |
Line 55
|
Line 55
|
* |
* |
*> \param[in] N |
*> \param[in] N |
*> \verbatim |
*> \verbatim |
*> N is integer |
*> N is INTEGER |
*> Order of the matrix H. N must be either 2 or 3. |
*> Order of the matrix H. N must be either 2 or 3. |
*> \endverbatim |
*> \endverbatim |
*> |
*> |
*> \param[in] H |
*> \param[in] H |
*> \verbatim |
*> \verbatim |
*> H is DOUBLE PRECISION array of dimension (LDH,N) |
*> H is DOUBLE PRECISION array, dimension (LDH,N) |
*> The 2-by-2 or 3-by-3 matrix H in (*). |
*> The 2-by-2 or 3-by-3 matrix H in (*). |
*> \endverbatim |
*> \endverbatim |
*> |
*> |
*> \param[in] LDH |
*> \param[in] LDH |
*> \verbatim |
*> \verbatim |
*> LDH is integer |
*> LDH is INTEGER |
*> The leading dimension of H as declared in |
*> The leading dimension of H as declared in |
*> the calling procedure. LDH.GE.N |
*> the calling procedure. LDH >= N |
*> \endverbatim |
*> \endverbatim |
*> |
*> |
*> \param[in] SR1 |
*> \param[in] SR1 |
Line 95
|
Line 95
|
*> |
*> |
*> \param[out] V |
*> \param[out] V |
*> \verbatim |
*> \verbatim |
*> V is DOUBLE PRECISION array of dimension N |
*> V is DOUBLE PRECISION array, dimension (N) |
*> A scalar multiple of the first column of the |
*> A scalar multiple of the first column of the |
*> matrix K in (*). |
*> matrix K in (*). |
*> \endverbatim |
*> \endverbatim |
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 June 2017 |
* |
* |
*> \ingroup doubleOTHERauxiliary |
*> \ingroup doubleOTHERauxiliary |
* |
* |
Line 121
|
Line 121
|
* ===================================================================== |
* ===================================================================== |
SUBROUTINE DLAQR1( N, H, LDH, SR1, SI1, SR2, SI2, V ) |
SUBROUTINE DLAQR1( N, H, LDH, SR1, SI1, SR2, SI2, V ) |
* |
* |
* -- LAPACK auxiliary routine (version 3.4.0) -- |
* -- LAPACK auxiliary routine (version 3.7.1) -- |
* -- 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 |
* June 2017 |
* |
* |
* .. Scalar Arguments .. |
* .. Scalar Arguments .. |
DOUBLE PRECISION SI1, SI2, SR1, SR2 |
DOUBLE PRECISION SI1, SI2, SR1, SR2 |
Line 147
|
Line 147
|
INTRINSIC ABS |
INTRINSIC ABS |
* .. |
* .. |
* .. Executable Statements .. |
* .. Executable Statements .. |
|
* |
|
* Quick return if possible |
|
* |
|
IF( N.NE.2 .AND. N.NE.3 ) THEN |
|
RETURN |
|
END IF |
|
* |
IF( N.EQ.2 ) THEN |
IF( N.EQ.2 ) THEN |
S = ABS( H( 1, 1 )-SR2 ) + ABS( SI2 ) + ABS( H( 2, 1 ) ) |
S = ABS( H( 1, 1 )-SR2 ) + ABS( SI2 ) + ABS( H( 2, 1 ) ) |
IF( S.EQ.ZERO ) THEN |
IF( S.EQ.ZERO ) THEN |