numerical errors in eigen decomp

3 次查看(过去 30 天)
Hi, I have computed a matrix, which (If it was done right) i know to be Positive semi definite. I did a eigen decomposition using eig and got the following result
min(eig(m2))
ans =
-9.8601e-14
A sample of the other eigen values is below -0.0000, -0.0000, -0.0000, 0.0000, 0.0000, 0.0000, 1.0047, 4.6499, 10.6999, 33.8846, 38.4610, 46.6943, 49.3577, 51.3520, 156.0164, 217.2181, 315.0000
Is it safe to assume the negative eigen values are through numerical issues and not due to a problem in the matrix computation?

采纳的回答

the cyclist
the cyclist 2011-4-12
Yes. "eig" was probably about the first MATLAB function ever written, decades ago, so I think you will find it reliable. :-)
A value of e-14 is about the numerical error you would expect in a double-precision calculation of this type.
  2 个评论
Andrew Newell
Andrew Newell 2011-4-12
In addition, judging by the spread of eigenvalues, your matrix is ill-conditioned. That would contribute to the error.
Matt Tearle
Matt Tearle 2011-4-12
Yep. Largest evalue is 10^2, smallest is 10^-13. That's as much accuracy as you can expect from double precision arithmetic. I'd call that good and move on.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Linear Algebra 的更多信息

标签

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by