Solves the Sylvester matrix equation. The data types you wire to the A, B, and C inputs determine the polymorphic instance to use.


icon

Inputs/Outputs

  • cu16.png operation A

    operation A specifies the operation the VI performs on matrix A in the Sylvester equation.

    0not transposed (default)—op(A) = A
    1transposed—op(A) = transpose of A
  • c2ddbl.png A

    A contains matrix A in the Sylvester equation. A must be a square matrix or upper quasi-triangular matrix in canonical Schur form.

  • c2ddbl.png B

    B contains matrix B in the Sylvester equation. B must be a square matrix or upper quasi-triangular matrix in canonical Schur form.

  • c2ddbl.png C

    C contains matrix C in the Sylvester equation.

  • cu16.png sign

    sign specifies the form of the Sylvester equation.

    0plus (default)—op(A)X + Xop(B) = aC
    1minus—op(A)XXop(B) = aC
  • cu16.png operation B

    operation B specifies the operation the VI performs on matrix B in the Sylvester equation.

    0not transposed (default)—op(B) = B
    1transposed—op(B) = transpose of B
  • ci32.png matrix type

    matrix type is the type of A and B.

    Specify types for A and B to speed up the computation of X and avoid unnecessary computation.

    0General
    3Upper Triangular (default)
  • i2ddbl.png X

    X returns the solution of the Sylvester equation.

  • idbl.png scale

    scale returns the scaling factor a of the Sylvester equation.

  • ibool.png perturbed

    perturbed indicates whether the VI uses perturbed values to solve the equation. When perturbed is TRUE, the eigenvalues of A and B are common or close and indicate the solution of the Sylvester equation is not unique.

  • ii32.png error

    error returns any error or warning from the VI. You can wire error to the Error Cluster From Error Code VI to convert the error code or warning into an error cluster.

  • The following equations define the Sylvester matrix equation:

    op(A)X + Xop(B) = aC

    or

    op(A)XXop(B) = aC

    where op(A) is A or the conjugate transpose of A, op(B) is B or the conjugate transpose of B, and a is a scaling factor to avoid overflow in X.

    The Sylvester matrix equation has a unique solution if and only if λ ± β ≠ 0, where λ and β are the eigenvalues of A and B, respectively, and the sign (+ or –) depends on the equation you want to solve. When the solution of the Sylvester matrix equation is not unique, this VI sets perturbed to TRUE and might not return the correct solution.