Balances the general matrix Input Matrix to improve the accuracy of computed eigenvalues and eigenvectors. Wire data to the Input Matrix input to determine the polymorphic instance to use or manually select the instance.

You can use the Eigenvalues and Vectors VI to obtain the eigenvalues and eigenvectors of Balanced Matrix.


icon

You can use one or both of the following similarity transformations to balance a matrix A and improve the accuracy of computed eigenvalues and eigenvectors:

  • Permute matrix A to block upper triangular form.
  • Scale matrix A' to reduce the norm of matrix A'22.

Permuting Matrix A

The following expression defines the permutation of matrix A to block upper triangular form.

where P is a permutation matrix, A'11 and A'33 are upper triangular, and PT is the transpose of matrix P.

The diagonal elements of A'11 and A'33 are eigenvalues of A. The central diagonal block A'22 starts from column(row) index low and ends in column(row) index high of A'. If no suitable permutation of A exists, the following conditions are true:

  • A'22 is the whole of A.
  • index low = 0.
  • index high = n – 1.

Scaling Matrix A'

The following expression defines the scaling of matrix A' to reduce the norm of matrix A'22.

so that ||A"22|| < ||A'22||, which reduces the effect of rounding errors on the accuracy of computed eigenvalues and eigenvectors.

The following block diagram illustrates using the Matrix Balance VI and the Back Transform Eigenvectors VI in a VI that computes the eigenvalues and eigenvectors of matrix A.