Find out if matrix is positive definite with numpy
I need to find out if matrix is positive definite. My matrix is numpy matrix. I was expecting to find any related method in numpy library, but no success. I appreciate any help.
Solution 1:
You can also check if all the eigenvalues of matrix are positive, if so the matrix is positive definite:
import numpy as np
def is_pos_def(x):
return np.all(np.linalg.eigvals(x) > 0)
Solution 2:
You could try computing Cholesky decomposition (numpy.linalg.cholesky
). This will raise LinAlgError
if the matrix is not positive definite.