@@ -215,7 +215,7 @@ function generate_function(sys::AbstractODESystem, dvs = unknowns(sys),
215215 if isdde
216216 build_function (rhss, u, DDE_HISTORY_FUN, p... , t; kwargs... ,
217217 wrap_code = wrap_code .∘ wrap_mtkparameters (sys, false , 3 ) .∘
218- wrap_array_vars (sys, rhss; dvs, ps) .∘
218+ wrap_array_vars (sys, rhss; dvs, ps, history = true ) .∘
219219 wrap_parameter_dependencies (sys, false ))
220220 else
221221 pre, sol_states = get_substitutions_and_solved_unknowns (sys)
@@ -598,17 +598,14 @@ function DiffEqBase.SDDEFunction{iip}(sys::AbstractODESystem, dvs = unknowns(sys
598598 expression_module = eval_module, checkbounds = checkbounds,
599599 kwargs... )
600600 f_oop, f_iip = eval_or_rgf .(f_gen; eval_expression, eval_module)
601+ f (u, h, p, t) = f_oop (u, h, p, t)
602+ f (du, u, h, p, t) = f_iip (du, u, h, p, t)
603+
601604 g_gen = generate_diffusion_function (sys, dvs, ps; expression = Val{true },
602605 isdde = true , kwargs... )
603606 g_oop, g_iip = eval_or_rgf .(g_gen; eval_expression, eval_module)
604- f (u, h, p, t) = f_oop (u, h, p, t)
605- f (u, h, p:: MTKParameters , t) = f_oop (u, h, p... , t)
606- f (du, u, h, p, t) = f_iip (du, u, h, p, t)
607- f (du, u, h, p:: MTKParameters , t) = f_iip (du, u, h, p... , t)
608607 g (u, h, p, t) = g_oop (u, h, p, t)
609- g (u, h, p:: MTKParameters , t) = g_oop (u, h, p... , t)
610608 g (du, u, h, p, t) = g_iip (du, u, h, p, t)
611- g (du, u, h, p:: MTKParameters , t) = g_iip (du, u, h, p... , t)
612609
613610 SDDEFunction {iip} (f, g, sys = sys)
614611end
0 commit comments