@@ -59,8 +59,10 @@ function MTK.JuMPDynamicOptProblem(sys::System, u0map, tspan, pmap;
59
59
steps = nothing ,
60
60
guesses = Dict (), kwargs... )
61
61
MTK. warn_overdetermined (sys, u0map)
62
- _u0map = has_alg_eqs (sys) ? u0map : merge (Dict (u0map), Dict (guesses))
63
- f, u0, p = MTK. process_SciMLProblem (ODEInputFunction, sys, _u0map, pmap;
62
+ _u0map = has_alg_eqs (sys) ? MTK. to_varmap (u0map, unknowns (sys)) :
63
+ merge (Dict (u0map), Dict (guesses))
64
+ pmap = MTK. to_varmap (pmap, parameters (sys))
65
+ f, u0, p = MTK. process_SciMLProblem (ODEInputFunction, sys, merge (_u0map, pmap);
64
66
t = tspan != = nothing ? tspan[1 ] : tspan, kwargs... )
65
67
66
68
pmap = MTK. recursive_unwrap (MTK. AnyDict (pmap))
@@ -86,8 +88,10 @@ function MTK.InfiniteOptDynamicOptProblem(sys::System, u0map, tspan, pmap;
86
88
steps = nothing ,
87
89
guesses = Dict (), kwargs... )
88
90
MTK. warn_overdetermined (sys, u0map)
89
- _u0map = has_alg_eqs (sys) ? u0map : merge (Dict (u0map), Dict (guesses))
90
- f, u0, p = MTK. process_SciMLProblem (ODEInputFunction, sys, _u0map, pmap;
91
+ _u0map = has_alg_eqs (sys) ? MTK. to_varmap (u0map, unknowns (sys)) :
92
+ merge (Dict (u0map), Dict (guesses))
93
+ pmap = MTK. to_varmap (pmap, parameters (sys))
94
+ f, u0, p = MTK. process_SciMLProblem (ODEInputFunction, sys, merge (_u0map, pmap);
91
95
t = tspan != = nothing ? tspan[1 ] : tspan, kwargs... )
92
96
93
97
pmap = MTK. recursive_unwrap (MTK. AnyDict (pmap))
0 commit comments