Threshold value in singular value decomposition
12 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello,
I'm interested in the LUQ decomposition that I found in http://www.mathworks.com/matlabcentral/fileexchange/11120-null-space-of-a-sparse-matrix/content/sparse%20null/luq.m.
In a paper that I'm reading, they suggest to distinguish zero/nonzero diagonal elements by setting a small numerical threshold as adopted in economic SVD in MATLAB.
I would like to ask what the numerical threshold adopted in economic SVD in MATLAB is.
Thank you in advance
1 commentaire
David Young
le 21 Mar 2012
Does "economic SVD" mean the svd function with the 'econ' option? If so, the paper mentioned does not seem to make sense, because svd(..., 'econ') does not distinguish zero/nonzero singular values on the basis of their magnitude - it simply uses the size of the input matrix to discard singular values and associated vectors which are known to be identically zero.
Réponses (2)
David Young
le 21 Mar 2012
See the comment above about the economical svd function.
I note that the documentation for rank() says that it uses as its default tolerance
max(size(A))*eps(norm(A))
Maybe this is useful?
1 commentaire
Keith Dalbey
le 23 Oct 2018
Thanks for posting this, I found it extremely useful when implementing a (faster than default svd based) pinv for correlation matrices (real, symmetric, positive semi-definite, 1's on the diagonal) in Armadillo using the arma::eig_sym (I frequently prototype code in MATLAB then port it to C++ for production use/speed, Armadillo is the linear algebra package I use for C++)
Voir également
Catégories
En savoir plus sur Linear Algebra dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!