From bcc091a58d0ba87d03881541d8a5be363d19b8e6 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

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

diff --git a/preprocessor/DynamicModel.cc b/preprocessor/DynamicModel.cc
index e937b9c36f..ed8d0e1f37 100644
--- a/preprocessor/DynamicModel.cc
+++ b/preprocessor/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