matlab 2011b和2012b之间的svd值不同

时间:2013-06-05 08:37:51

标签: matlab linear-algebra svd

我尝试在两个版本的matlab上为svd函数实现相同的矩阵F. 然而,我发现两种解决方案中U和V矩阵的符号相反。 我可以知道哪些版本的MATLAB能提供更好或更准确的答案吗? 或者实际上两个答案都是正确的?

1 个答案:

答案 0 :(得分:1)

矩阵的奇异值分解仅定义为符号,因此UV的符号是任意的,并且两个答案都是正确的。无论MATLAB产生哪种迹象,F = U*S*V仍应如此,UV构成F的正确奇异值分解。 (注意“a”,而不是“the”)。

您不应该依赖MAT​​LAB生成特定的符号,它可能因版本而异。