]> gitweb.michael.orlitzky.com - octave.git/blobdiff - is_positive_definite.m
Add is_positive_definite() and its tests.
[octave.git] / is_positive_definite.m
diff --git a/is_positive_definite.m b/is_positive_definite.m
new file mode 100644 (file)
index 0000000..61a250d
--- /dev/null
@@ -0,0 +1,13 @@
+function ipd = is_positive_definite(A)
+  % Returns true if A is positive-definite, and false otherwise. We
+  % perform a full Cholesky factorization, so this is not fast.
+
+  ipd = false;
+
+  [R,p] = chol(A);
+
+  if (p == 0)
+    % The error flag is not set.
+    ipd = true;
+  end
+end