Check for Positive Semi-Definiteness
This function checks whether a symmetric matrix is Positive Semi-Definite (PSD). That means, it is determined whether all eigenvalues of the matrix are non-negative. Note that this function does not check whether the matrix is actually symmetric.
is.PSD(X, tol = 1e-08)
X |
a symmetric matrix |
tol |
torelance value. Eigenvalues between Symmetric, PSD matrices are, e.g., correlation or kernel matrices. Such matrices are used in models like Kriging or Support Vector regression. |
boolean, which is TRUE if X is PSD
# The following permutations will produce # a non-PSD kernel matrix with Insert distance # and a PSD distance matrix with Hamming distance # (for the given theta value of 0.01) x <- list(c(2,1,4,3),c(2,4,3,1),c(4,2,1,3),c(4,3,2,1),c(1,4,3,2)) K <- exp(-0.01*distanceMatrix(x,distancePermutationInsert)) is.PSD(K) K <- exp(-0.01*distanceMatrix(x,distancePermutationHamming)) is.PSD(K)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.