SRC/dtrsyl.f(3) Library Functions Manual SRC/dtrsyl.f(3)

SRC/dtrsyl.f


subroutine dtrsyl (trana, tranb, isgn, m, n, a, lda, b, ldb, c, ldc, scale, info)
DTRSYL

DTRSYL

Purpose:

 DTRSYL solves the real Sylvester matrix equation:
    op(A)*X + X*op(B) = scale*C or
    op(A)*X - X*op(B) = scale*C,
 where op(A) = A or A**T, and  A and B are both upper quasi-
 triangular. A is M-by-M and B is N-by-N; the right hand side C and
 the solution X are M-by-N; and scale is an output scale factor, set
 <= 1 to avoid overflow in X.
 A and B must be in Schur canonical form (as returned by DHSEQR), that
 is, block upper triangular with 1-by-1 and 2-by-2 diagonal blocks;
 each 2-by-2 diagonal block has its diagonal elements equal and its
 off-diagonal elements of opposite sign.

Parameters

TRANA
          TRANA is CHARACTER*1
          Specifies the option op(A):
          = 'N': op(A) = A    (No transpose)
          = 'T': op(A) = A**T (Transpose)
          = 'C': op(A) = A**H (Conjugate transpose = Transpose)

TRANB

          TRANB is CHARACTER*1
          Specifies the option op(B):
          = 'N': op(B) = B    (No transpose)
          = 'T': op(B) = B**T (Transpose)
          = 'C': op(B) = B**H (Conjugate transpose = Transpose)

ISGN

          ISGN is INTEGER
          Specifies the sign in the equation:
          = +1: solve op(A)*X + X*op(B) = scale*C
          = -1: solve op(A)*X - X*op(B) = scale*C

M

          M is INTEGER
          The order of the matrix A, and the number of rows in the
          matrices X and C. M >= 0.

N

          N is INTEGER
          The order of the matrix B, and the number of columns in the
          matrices X and C. N >= 0.

A

          A is DOUBLE PRECISION array, dimension (LDA,M)
          The upper quasi-triangular matrix A, in Schur canonical form.

LDA

          LDA is INTEGER
          The leading dimension of the array A. LDA >= max(1,M).

B

          B is DOUBLE PRECISION array, dimension (LDB,N)
          The upper quasi-triangular matrix B, in Schur canonical form.

LDB

          LDB is INTEGER
          The leading dimension of the array B. LDB >= max(1,N).

C

          C is DOUBLE PRECISION array, dimension (LDC,N)
          On entry, the M-by-N right hand side matrix C.
          On exit, C is overwritten by the solution matrix X.

LDC

          LDC is INTEGER
          The leading dimension of the array C. LDC >= max(1,M)

SCALE

          SCALE is DOUBLE PRECISION
          The scale factor, scale, set <= 1 to avoid overflow in X.

INFO

          INFO is INTEGER
          = 0: successful exit
          < 0: if INFO = -i, the i-th argument had an illegal value
          = 1: A and B have common or very close eigenvalues; perturbed
               values were used to solve the equation (but the matrices
               A and B are unchanged).

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line 162 of file dtrsyl.f.

Generated automatically by Doxygen for LAPACK from the source code.

Version 3.12.0 LAPACK