You are now following this Submission
- You will see updates in your followed content feed
- You may receive emails, depending on your communication preferences
This functions returns the nearest (minimizing the Frobenius norm of the difference) symmetric and positive definite matrix to a supplied square matrix which can be real or complex. It is particularly useful for ensuring that estimated covariance or cross-spectral matrices have the expected properties of these classes.
By default, it uses the method of Nicholas Highgam:
Higham NJ. Computing a nearest symmetric positive semidefinite matrix.
Linear algebra and its applications. 1988 May 1;103:103-18.
(http://www.sciencedirect.com/science/article/pii/0024379588902236)
This function was modified from nearestSPD.m by John D'Errico
(https://www.mathworks.com/matlabcentral/fileexchange/42885-nearestspd)
Most importantly I added support for complex matrices, which must be Hermitian rather than symmetric.
I also added the 'eig' method and made other small changes.
Cite As
Burke Rosen (2026). nearestPSD (https://ch.mathworks.com/matlabcentral/fileexchange/73742-nearestpsd), MATLAB Central File Exchange. Retrieved .
Acknowledgements
Inspired by: nearestSPD
General Information
- Version 1.0.2 (3.18 KB)
MATLAB Release Compatibility
- Compatible with any release
Platform Compatibility
- Windows
- macOS
- Linux
