How can I get the same results between matlab svd and simulink svd?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi,
I've got a trouble with svd in simulink. Svd returns U S V, such that A= U S V'. The matrix U in the simulink svd, is different between U of the matlab svd (not only for the sign).
Why there is that difference?
How can i get the matrix U of the matlab svd from the U of simulink svd?
0 commentaires
Réponses (1)
Jan
le 13 Jan 2013
From a numerical point of view, the reply of an SVD has to reply U, S and V such, that U*S*V' = A within certain rounding limits. In consequence different algorithms or order of executions will lead to different results, which are all "correct".
Now look at the differences of the results:
U_matlab - U_simulink
S_matlab - S_simulink
V_matlab - V_simulink
A - (U_matlab * S_matlab * V_matlab')
A - (U_simulink* S_simulink* V_simulink')
What do you observe?
7 commentaires
Jan
le 14 Jan 2013
Modifié(e) : Jan
le 14 Jan 2013
So your actual question is, that the SVD of Simulink is flawed? Or does this mean, that the substace tracking cannot handle a [m x n] matrix properly, e.g. because a length command is used instead of a size(x, 1)?
I still have no clue what you are talking about. I really want to help, but I can't.
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!