class="resources"
Performs the Hessenberg decomposition of Input Matrix. You can use this polymorphic VI to perform the Hessenberg decomposition of a real matrix or a complex matrix. The data type you wire to the Input Matrix input determines the polymorphic instance to use. Details

![]() |
Input Matrix is an n × n real matrix. |
![]() |
index low is the index low value from the Matrix Balance VI. If you balance Input Matrix with the Matrix Balance VI, wire the index low output of the Matrix Balance VI to this input. If index low = 1 (default), the VI uses 0 for index low. |
![]() |
index high is the index high value from the Matrix Balance VI. If you balance Input Matrix with the Matrix Balance VI, wire the index high output of the Matrix Balance VI to this input. If index high = 1 (default), the VI uses n 1 for index high. |
![]() |
Hessenberg Form H returns an n × n matrix in Hessenberg form. |
![]() |
Orthogonal Matrix Q returns the n × n orthogonal matrix. |
![]() |
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. |

![]() |
Input Matrix is an n × n complex matrix. |
![]() |
index low is the index low value from the Matrix Balance VI. If you balance Input Matrix with the Matrix Balance VI, wire the index low output of the Matrix Balance VI to this input. If index low = 1 (default), the VI uses 0 for index low. |
![]() |
index high is the index high value from the Matrix Balance VI. If you balance Input Matrix with the Matrix Balance VI, wire the index high output of the Matrix Balance VI to this input. If index high = 1 (default), the VI uses n 1 for index high. |
![]() |
Hessenberg Form H returns an n × n matrix in Hessenberg form. |
![]() |
Orthogonal Matrix Q returns the n × n unitary matrix. |
![]() |
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 expression defines the Hessenberg decomposition of an n × n matrix A.
A = QHQH
where Q is an orthogonal matrix when matrix A is a real matrix and a unitary matrix when matrix A is a complex matrix, QH is the conjugate transpose of matrix Q, and H is a Hessenberg matrix.
By definition, a Hessenberg matrix is a matrix with zeros under the main subdiagonal, as shown by the following matrix.
