photo

Artour


M&G Limited

Active since 2013

Followers: 0   Following: 0

Message

Hello,

I have a problem with covariance matrices that turn non-symmetric and negative definite as a consequence of rounding off errors. I've symmetrized the matrices by

A = (A + A')/2;

However, I haven't been able to correct the negative eigenvalues, and it's very important that the matrices are always non-negative definite. For example, the following method doesn't help:

[V,D] = eig(A);
D = max(D,0);
A = V*D/V;

Can anyone please suggest what can be done here.

Thanks,
Artour

Artour's Badges

MATLAB Answers Badges

All
  • Thankful Level 1Thankful Level 1
    20 Jul 2017