Owning Palette: Linear Algebra VIs
Requires: Full Development System
Solves the Sylvester matrix equation. The data types you wire to the A, B, and C inputs determine the polymorphic instance to use.
Use the pull-down menu to select an instance of this VI.
![]() |
![]() |
![]() |
operation A specifies the operation the VI performs on matrix A in the Sylvester equation.
|
||||
![]() |
A contains matrix A in the Sylvester equation. A must be a square matrix or upper quasi-triangular matrix in canonical Schur form. | ||||
![]() |
B contains matrix B in the Sylvester equation. B must be a square matrix or upper quasi-triangular matrix in canonical Schur form. | ||||
![]() |
C contains matrix C in the Sylvester equation. | ||||
![]() |
sign specifies the form of the Sylvester equation.
|
||||
![]() |
operation B specifies the operation the VI performs on matrix B in the Sylvester equation.
|
||||
![]() |
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.
|
||||
![]() |
X returns the solution of the Sylvester equation. | ||||
![]() |
scale returns the scaling factor a of the Sylvester equation. | ||||
![]() |
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. | ||||
![]() |
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. |
![]() |
operation A specifies the operation the VI performs on matrix A in the Sylvester equation.
|
||||
![]() |
A contains matrix A in the Sylvester equation. A must be a square or upper-triangular matrix. | ||||
![]() |
B contains matrix B in the Sylvester equation. B must be a square or upper-triangular matrix. | ||||
![]() |
C contains matrix C in the Sylvester equation. | ||||
![]() |
sign specifies the form of the Sylvester equation.
|
||||
![]() |
operation B specifies the operation the VI performs on matrix B in the Sylvester equation.
|
||||
![]() |
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.
|
||||
![]() |
X returns the solution of the Sylvester equation. | ||||
![]() |
scale returns the scaling factor a of the Sylvester equation. | ||||
![]() |
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. | ||||
![]() |
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)X – Xop(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.