diff --git a/docs.html b/docs.html
index b84f48b8..4ef8f32b 100644
--- a/docs.html
+++ b/docs.html
@@ -8802,19 +8802,29 @@ See also:
-det( A )
+
+
+| val = det( A ) | | (form 1) |
+| det( val, A ) | | (form 2) |
+
+
--
-Determinant of square matrix A
+
- Calculate the determinant of square matrix A, based on LU decomposition
+
+- form 1: return the determinant
+
+- form 2: store the calculated determinant in val and return a bool indicating success
+
+- If A is not square sized, a std::logic_error exception is thrown
+
+- If the calculation fails:
+
+- val = det(A) thows a std::runtime_error exception
+- det(val,A) returns a bool set to false (exception is not thrown)
+
--
-If A is not square sized, a std::logic_error exception is thrown
-
-
--
-Caveat: for large matrices log_det() and log_det_sympd() are more precise than det()
-
+- Caveat: log_det() is preferred, as it's less likely to suffer from numerical underflows/overflows
-
Examples:
@@ -8822,7 +8832,10 @@ Examples:
mat A(5, 5, fill::randu);
-double x = det(A);
+double val1 = det(A);
+
+double val2;
+bool success = det(val2, A);
@@ -8831,7 +8844,6 @@ double x = det(A);
See also:
- log_det()
-- log_det_sympd()
- rcond()
- determinant in MathWorld
- determinant in Wikipedia
@@ -9915,13 +9927,7 @@ See also:
--
-Log determinant of square matrix A
-
-
--
-If A is not square sized, a std::logic_error exception is thrown
-
+- Log determinant of square matrix A, based on LU decomposition
- form 1: store the calculated log determinant in val and sign
the determinant is equal to exp(val)*sign
@@ -9945,6 +9951,8 @@ if matrix A is real and the determinant is negative:
+- If A is not square sized, a std::logic_error exception is thrown
+
- If the log determinant cannot be found:
- log_det(val, sign, A) returns a bool set to false (exception is not thrown)
@@ -9991,18 +9999,14 @@ See also:
--
-Log determinant of symmetric positive definite matrix A
-
-
--
-If A is not square sized, a std::logic_error exception is thrown
-
+- Log determinant of symmetric positive definite matrix A
- form 1: store the calculated log determinant in result and return a bool indicating success
- form 2: return the log determinant
+- If A is not square sized, a std::logic_error exception is thrown
+
- If the log determinant cannot be found:
- log_det_sympd(result, A) returns a bool set to false (exception is not thrown)
@@ -10030,7 +10034,6 @@ double result2 = log_det_sympd(B); // form 2
See also: