From 3cf36f4aee859dd6a1c8cca258667ef341b710ad Mon Sep 17 00:00:00 2001 From: Alex Cunningham Date: Fri, 5 Mar 2010 22:27:57 +0000 Subject: [PATCH] Added remaining terms for derivatives of ternary factors --- cpp/numericalDerivative.h | 83 ++++++++++++++++++++++++--------------- 1 file changed, 51 insertions(+), 32 deletions(-) diff --git a/cpp/numericalDerivative.h b/cpp/numericalDerivative.h index 798fc2d65..3579665aa 100644 --- a/cpp/numericalDerivative.h +++ b/cpp/numericalDerivative.h @@ -52,15 +52,10 @@ namespace gtsam { Vector d(n,0.0); Matrix H = zeros(m,n); for (size_t j=0;j + Matrix numericalDerivative32 + (Y (*h)(const X1&, const X2&, const X3&), + const X1& x1, const X2& x2, const X3& x3, double delta=1e-5) + { + Y hx = h(x1,x2,x3); + double factor = 1.0/(2.0*delta); + const size_t m = dim(hx), n = dim(x1); + Vector d(n,0.0); + Matrix H = zeros(m,n); + for (size_t j=0;j + Matrix numericalDerivative33 + (Y (*h)(const X1&, const X2&, const X3&), + const X1& x1, const X2& x2, const X3& x3, double delta=1e-5) + { + Y hx = h(x1,x2,x3); + double factor = 1.0/(2.0*delta); + const size_t m = dim(hx), n = dim(x1); + Vector d(n,0.0); + Matrix H = zeros(m,n); + for (size_t j=0;j