Stable inversion
When inverting records with locations and times that are close, the kernel matrix is ill-conditioned. To address this the np.linalg.inv
call is replaced by an eigen-decomposition and (numerically) negative eigenvalues are regularized.