diff --git a/src/ComputingTasks.cc b/src/ComputingTasks.cc index f9fb98abfc9d91b04f8e81d31578d9f9c2f87ef6..ba134fa876ab801c023ed9af0bef71e1783da6e7 100644 --- a/src/ComputingTasks.cc +++ b/src/ComputingTasks.cc @@ -2442,7 +2442,7 @@ PlannerObjectiveStatement::getPlannerObjective() const void PlannerObjectiveStatement::computingPass(const ModFileStructure &mod_file_struct) { - model_tree.computingPass(max(3, mod_file_struct.order_option), 0, {}, false, false); + model_tree.computingPass(max(3, mod_file_struct.order_option), 0, {}, false, false, false); computing_pass_called = true; } diff --git a/src/ModFile.cc b/src/ModFile.cc index 17ef006ce20d0df17d24a57c935402f484906628..1e3c38b9699f863c171cfdb3789eece539924201 100644 --- a/src/ModFile.cc +++ b/src/ModFile.cc @@ -672,7 +672,7 @@ ModFile::computingPass(bool no_tmp_terms, OutputType output, int params_derivs_o || (mod_file_struct.GMM_present && (mod_file_struct.analytic_standard_errors_present || mod_file_struct.analytic_jacobian_present))) paramsDerivsOrder = params_derivs_order; - static_model.computingPass(derivsOrder, paramsDerivsOrder, global_eval_context, no_tmp_terms, block); + static_model.computingPass(derivsOrder, paramsDerivsOrder, global_eval_context, no_tmp_terms, block, use_dll); } // Set things to compute for dynamic model if (mod_file_struct.perfect_foresight_solver_present diff --git a/src/StaticModel.cc b/src/StaticModel.cc index 44b32806b0459d6ca075079cc8dbb58a0479ae60..c1fc35306da1890c887ee8af1bca362e732bbb40 100644 --- a/src/StaticModel.cc +++ b/src/StaticModel.cc @@ -170,7 +170,7 @@ StaticModel::writeStaticBlockBytecode(const string &basename) const } void -StaticModel::computingPass(int derivsOrder, int paramsDerivsOrder, const eval_context_t &eval_context, bool no_tmp_terms, bool block) +StaticModel::computingPass(int derivsOrder, int paramsDerivsOrder, const eval_context_t &eval_context, bool no_tmp_terms, bool block, bool use_dll) { initializeVariablesAndEquations(); @@ -222,7 +222,7 @@ StaticModel::computingPass(int derivsOrder, int paramsDerivsOrder, const eval_co computeParamsDerivatives(paramsDerivsOrder); } - computeTemporaryTerms(true, no_tmp_terms); + computeTemporaryTerms(!use_dll, no_tmp_terms); if (paramsDerivsOrder > 0 && !no_tmp_terms) computeParamsDerivativesTemporaryTerms(); diff --git a/src/StaticModel.hh b/src/StaticModel.hh index 6971f12ae8e6d293037b506666c6ab57552aa030..771013046e7e8912981681f469c1350cf0ab891d 100644 --- a/src/StaticModel.hh +++ b/src/StaticModel.hh @@ -122,7 +122,7 @@ public: \param derivsOrder order of derivation with respect to endogenous \param paramsDerivsOrder order of derivatives w.r. to a pair (endogenous, parameter) to be computed */ - void computingPass(int derivsOrder, int paramsDerivsOrder, const eval_context_t &eval_context, bool no_tmp_terms, bool block); + void computingPass(int derivsOrder, int paramsDerivsOrder, const eval_context_t &eval_context, bool no_tmp_terms, bool block, bool use_dll); //! Writes static model file (+ bytecode) void writeStaticFile(const string &basename, bool use_dll, const string &mexext, const filesystem::path &matlabroot, bool julia) const;