From a32043c2a5ef7e2ba77a2729ef1fb41180601327 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Villemot?= <sebastien.villemot@ens.fr>
Date: Fri, 20 Jan 2012 12:07:36 -0500
Subject: [PATCH] Preprocessor: compute temp. terms for 2nd deriv of residuals
 and jacobian wrt params and 1st deriv of hessian wrt to params

---
 DynamicModel.cc | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/DynamicModel.cc b/DynamicModel.cc
index e937b9c3..ed8d0e1f 100644
--- a/DynamicModel.cc
+++ b/DynamicModel.cc
@@ -3775,6 +3775,18 @@ DynamicModel::computeParamsDerivativesTemporaryTerms()
   for (second_derivatives_t::iterator it = jacobian_params_derivatives.begin();
        it != jacobian_params_derivatives.end(); it++)
     it->second->computeTemporaryTerms(reference_count, params_derivs_temporary_terms, true);
+
+  for (second_derivatives_t::const_iterator it = residuals_params_second_derivatives.begin();
+       it != residuals_params_second_derivatives.end(); ++it)
+    it->second->computeTemporaryTerms(reference_count, params_derivs_temporary_terms, true);
+
+  for (third_derivatives_t::const_iterator it = jacobian_params_second_derivatives.begin();
+       it != jacobian_params_second_derivatives.end(); ++it)
+    it->second->computeTemporaryTerms(reference_count, params_derivs_temporary_terms, true);
+
+  for (third_derivatives_t::const_iterator it = hessian_params_derivatives.begin();
+       it != hessian_params_derivatives.end(); ++it)
+    it->second->computeTemporaryTerms(reference_count, params_derivs_temporary_terms, true);
 }
 
 void
-- 
GitLab