Diff for /rpl/lapack/lapack/ztgsy2.f between versions 1.7 and 1.8

version 1.7, 2010/12/21 13:53:57 version 1.8, 2011/07/22 07:38:21
Line 2 Line 2
      $                   LDD, E, LDE, F, LDF, SCALE, RDSUM, RDSCAL,       $                   LDD, E, LDE, F, LDF, SCALE, RDSUM, RDSCAL,
      $                   INFO )       $                   INFO )
 *  *
 *  -- LAPACK auxiliary routine (version 3.2) --  *  -- LAPACK auxiliary routine (version 3.3.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 2006  *  -- April 2011                                                      --
 *  *
 *     .. Scalar Arguments ..  *     .. Scalar Arguments ..
       CHARACTER          TRANS        CHARACTER          TRANS
Line 22 Line 22
 *  *
 *  ZTGSY2 solves the generalized Sylvester equation  *  ZTGSY2 solves the generalized Sylvester equation
 *  *
 *              A * R - L * B = scale *   C               (1)  *              A * R - L * B = scale * C               (1)
 *              D * R - L * E = scale * F  *              D * R - L * E = scale * F
 *  *
 *  using Level 1 and 2 BLAS, where R and L are unknown M-by-N matrices,  *  using Level 1 and 2 BLAS, where R and L are unknown M-by-N matrices,
Line 36 Line 36
 *  In matrix notation solving equation (1) corresponds to solve  *  In matrix notation solving equation (1) corresponds to solve
 *  Zx = scale * b, where Z is defined as  *  Zx = scale * b, where Z is defined as
 *  *
 *         Z = [ kron(In, A)  -kron(B', Im) ]             (2)  *         Z = [ kron(In, A)  -kron(B**H, Im) ]             (2)
 *             [ kron(In, D)  -kron(E', Im) ],  *             [ kron(In, D)  -kron(E**H, Im) ],
 *  *
 *  Ik is the identity matrix of size k and X' is the transpose of X.  *  Ik is the identity matrix of size k and X**H is the conjuguate transpose of X.
 *  kron(X, Y) is the Kronecker product between the matrices X and Y.  *  kron(X, Y) is the Kronecker product between the matrices X and Y.
 *  *
 *  If TRANS = 'C', y in the conjugate transposed system Z'y = scale*b  *  If TRANS = 'C', y in the conjugate transposed system Z**H*y = scale*b
 *  is solved for, which is equivalent to solve for R and L in  *  is solved for, which is equivalent to solve for R and L in
 *  *
 *              A' * R  + D' * L   = scale *  C           (3)  *              A**H * R  + D**H * L   = scale *  C           (3)
 *              R  * B' + L  * E'  = scale * -F  *              R  * B**H + L  * E**H  = scale * -F
 *  *
 *  This case is used to compute an estimate of Dif[(A, D), (B, E)] =  *  This case is used to compute an estimate of Dif[(A, D), (B, E)] =
 *  = sigma_min(Z) using reverse communicaton with ZLACON.  *  = sigma_min(Z) using reverse communicaton with ZLACON.
Line 298 Line 298
       ELSE        ELSE
 *  *
 *        Solve transposed (I, J) - system:  *        Solve transposed (I, J) - system:
 *           A(I, I)' * R(I, J) + D(I, I)' * L(J, J) = C(I, J)  *           A(I, I)**H * R(I, J) + D(I, I)**H * L(J, J) = C(I, J)
 *           R(I, I) * B(J, J) + L(I, J) * E(J, J)   = -F(I, J)  *           R(I, I) * B(J, J) + L(I, J) * E(J, J)   = -F(I, J)
 *        for I = 1, 2, ..., M, J = N, N - 1, ..., 1  *        for I = 1, 2, ..., M, J = N, N - 1, ..., 1
 *  *
Line 307 Line 307
          DO 80 I = 1, M           DO 80 I = 1, M
             DO 70 J = N, 1, -1              DO 70 J = N, 1, -1
 *  *
 *              Build 2 by 2 system Z'  *              Build 2 by 2 system Z**H
 *  *
                Z( 1, 1 ) = DCONJG( A( I, I ) )                 Z( 1, 1 ) = DCONJG( A( I, I ) )
                Z( 2, 1 ) = -DCONJG( B( J, J ) )                 Z( 2, 1 ) = -DCONJG( B( J, J ) )
Line 320 Line 320
                RHS( 1 ) = C( I, J )                 RHS( 1 ) = C( I, J )
                RHS( 2 ) = F( I, J )                 RHS( 2 ) = F( I, J )
 *  *
 *              Solve Z' * x = RHS  *              Solve Z**H * x = RHS
 *  *
                CALL ZGETC2( LDZ, Z, LDZ, IPIV, JPIV, IERR )                 CALL ZGETC2( LDZ, Z, LDZ, IPIV, JPIV, IERR )
                IF( IERR.GT.0 )                 IF( IERR.GT.0 )

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


CVSweb interface <joel.bertrand@systella.fr>