nearestPSD

Find the nearest Positive Semi-Definite matrix to an arbitrary real or complex square matrix.

You are now following this Submission

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

Categories

Find more on Linear Algebra in Help Center and MATLAB Answers

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.0.2

fixed abbreviations.

1.0.1

updated Summary.

1.0.0