--- rpl/lapack/lapack/zhgeqz.f 2011/11/21 22:19:48 1.9 +++ rpl/lapack/lapack/zhgeqz.f 2018/05/29 07:18:21 1.19 @@ -2,18 +2,18 @@ * * =========== DOCUMENTATION =========== * -* Online html documentation available at -* http://www.netlib.org/lapack/explore-html/ +* Online html documentation available at +* http://www.netlib.org/lapack/explore-html/ * *> \htmlonly -*> Download ZHGEQZ + dependencies -*> -*> [TGZ] -*> -*> [ZIP] -*> +*> Download ZHGEQZ + dependencies +*> +*> [TGZ] +*> +*> [ZIP] +*> *> [TXT] -*> \endhtmlonly +*> \endhtmlonly * * Definition: * =========== @@ -21,7 +21,7 @@ * SUBROUTINE ZHGEQZ( JOB, COMPQ, COMPZ, N, ILO, IHI, H, LDH, T, LDT, * ALPHA, BETA, Q, LDQ, Z, LDZ, WORK, LWORK, * RWORK, INFO ) -* +* * .. Scalar Arguments .. * CHARACTER COMPQ, COMPZ, JOB * INTEGER IHI, ILO, INFO, LDH, LDQ, LDT, LDZ, LWORK, N @@ -32,7 +32,7 @@ * $ Q( LDQ, * ), T( LDT, * ), WORK( * ), * $ Z( LDZ, * ) * .. -* +* * *> \par Purpose: * ============= @@ -44,18 +44,18 @@ *> using the single-shift QZ method. *> Matrix pairs of this type are produced by the reduction to *> generalized upper Hessenberg form of a complex matrix pair (A,B): -*> +*> *> A = Q1*H*Z1**H, B = Q1*T*Z1**H, -*> +*> *> as computed by ZGGHRD. -*> +*> *> If JOB='S', then the Hessenberg-triangular pair (H,T) is *> also reduced to generalized Schur form, -*> +*> *> H = Q*S*Z**H, T = Q*P*Z**H, -*> +*> *> where Q and Z are unitary matrices and S and P are upper triangular. -*> +*> *> Optionally, the unitary matrix Q from the generalized Schur *> factorization may be postmultiplied into an input matrix Q1, and the *> unitary matrix Z may be postmultiplied into an input matrix Z1. @@ -63,9 +63,9 @@ *> the matrix pair (A,B) to generalized Hessenberg form, then the output *> matrices Q1*Q and Z1*Z are the unitary factors from the generalized *> Schur factorization of (A,B): -*> +*> *> A = (Q1*Q)*S*(Z1*Z)**H, B = (Q1*Q)*P*(Z1*Z)**H. -*> +*> *> To avoid overflow, eigenvalues of the matrix pair (H,T) *> (equivalently, of (A,B)) are computed as a pair of complex values *> (alpha,beta). If beta is nonzero, lambda = alpha / beta is an @@ -190,12 +190,12 @@ *> \param[in,out] Q *> \verbatim *> Q is COMPLEX*16 array, dimension (LDQ, N) -*> On entry, if COMPZ = 'V', the unitary matrix Q1 used in the +*> On entry, if COMPQ = 'V', the unitary matrix Q1 used in the *> reduction of (A,B) to generalized Hessenberg form. -*> On exit, if COMPZ = 'I', the unitary matrix of left Schur -*> vectors of (H,T), and if COMPZ = 'V', the unitary matrix of +*> On exit, if COMPQ = 'I', the unitary matrix of left Schur +*> vectors of (H,T), and if COMPQ = 'V', the unitary matrix of *> left Schur vectors of (A,B). -*> Not referenced if COMPZ = 'N'. +*> Not referenced if COMPQ = 'N'. *> \endverbatim *> *> \param[in] LDQ @@ -261,12 +261,12 @@ * Authors: * ======== * -*> \author Univ. of Tennessee -*> \author Univ. of California Berkeley -*> \author Univ. of Colorado Denver -*> \author NAG Ltd. +*> \author Univ. of Tennessee +*> \author Univ. of California Berkeley +*> \author Univ. of Colorado Denver +*> \author NAG Ltd. * -*> \date November 2011 +*> \date April 2012 * *> \ingroup complex16GEcomputational * @@ -284,10 +284,10 @@ $ ALPHA, BETA, Q, LDQ, Z, LDZ, WORK, LWORK, $ RWORK, 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, -- * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- -* November 2011 +* April 2012 * * .. Scalar Arguments .. CHARACTER COMPQ, COMPZ, JOB @@ -454,7 +454,7 @@ CALL ZSCAL( J-1, SIGNBC, T( 1, J ), 1 ) CALL ZSCAL( J, SIGNBC, H( 1, J ), 1 ) ELSE - H( J, J ) = H( J, J )*SIGNBC + CALL ZSCAL( 1, SIGNBC, H( J, J ), 1 ) END IF IF( ILZ ) $ CALL ZSCAL( N, SIGNBC, Z( 1, J ), 1 ) @@ -666,7 +666,7 @@ CALL ZSCAL( ILAST+1-IFRSTM, SIGNBC, H( IFRSTM, ILAST ), $ 1 ) ELSE - H( ILAST, ILAST ) = H( ILAST, ILAST )*SIGNBC + CALL ZSCAL( 1, SIGNBC, H( ILAST, ILAST ), 1 ) END IF IF( ILZ ) $ CALL ZSCAL( N, SIGNBC, Z( 1, ILAST ), 1 ) @@ -744,8 +744,8 @@ * * Exceptional shift. Chosen for no particularly good reason. * - ESHIFT = ESHIFT + DCONJG( ( ASCALE*H( ILAST-1, ILAST ) ) / - $ ( BSCALE*T( ILAST-1, ILAST-1 ) ) ) + ESHIFT = ESHIFT + (ASCALE*H(ILAST,ILAST-1))/ + $ (BSCALE*T(ILAST-1,ILAST-1)) SHIFT = ESHIFT END IF * @@ -850,7 +850,7 @@ CALL ZSCAL( J-1, SIGNBC, T( 1, J ), 1 ) CALL ZSCAL( J, SIGNBC, H( 1, J ), 1 ) ELSE - H( J, J ) = H( J, J )*SIGNBC + CALL ZSCAL( 1, SIGNBC, H( J, J ), 1 ) END IF IF( ILZ ) $ CALL ZSCAL( N, SIGNBC, Z( 1, J ), 1 )