EngWiPy
- 1,361
- 61
Hi,
I have a matrix that is nearly singular, so I am using singular value decomposition (SVD) approach for inversion. In this case an N-by-N matrix can be written as:
\mathbf{H}=\mathbf{U}\Sigma\mathbf{V}^H
Then the inverse can be written as:
\mathbf{H}^{-1}=\mathbf{V}\Sigma^{-1}\mathbf{U}^H
where
\Sigma=\text{diag}(\sigma_1,\ldots,\sigma_N)
The problem in singular matrices is that some of the singular values are zeros, and hence invert \Sigma will have some undefined values. To overcome this problem, if a singular value is less than a threshold, then its inverse is forced to 0.
The question is: how to control the threshold such that the matrix is inverted with high accuracy?
Thanks
I have a matrix that is nearly singular, so I am using singular value decomposition (SVD) approach for inversion. In this case an N-by-N matrix can be written as:
\mathbf{H}=\mathbf{U}\Sigma\mathbf{V}^H
Then the inverse can be written as:
\mathbf{H}^{-1}=\mathbf{V}\Sigma^{-1}\mathbf{U}^H
where
\Sigma=\text{diag}(\sigma_1,\ldots,\sigma_N)
The problem in singular matrices is that some of the singular values are zeros, and hence invert \Sigma will have some undefined values. To overcome this problem, if a singular value is less than a threshold, then its inverse is forced to 0.
The question is: how to control the threshold such that the matrix is inverted with high accuracy?
Thanks