@@ -301,12 +301,12 @@ end
301301"""
302302 $(TYPEDSIGNATURES)
303303
304- Performs symbolic substitution on the values in `varmap`, using `varmap` itself as the
305- set of substitution rules.
304+ Performs symbolic substitution on the values in `varmap` for the keys in `vars`, using
305+ `varmap` itself as the set of substitution rules.
306306"""
307- function evaluate_varmap! (varmap:: AbstractDict )
308- for (k, v) in varmap
309- varmap[k] = fixpoint_sub (v , varmap)
307+ function evaluate_varmap! (varmap:: AbstractDict , vars )
308+ for k in vars
309+ varmap[k] = fixpoint_sub (varmap[k] , varmap)
310310 end
311311end
312312
@@ -499,7 +499,7 @@ function process_SciMLProblem(
499499 add_observed! (sys, op)
500500 add_parameter_dependencies! (sys, op)
501501
502- evaluate_varmap! (op)
502+ evaluate_varmap! (op, dvs )
503503
504504 u0 = better_varmap_to_vars (
505505 op, dvs; tofloat = true , use_union = false ,
@@ -511,6 +511,7 @@ function process_SciMLProblem(
511511
512512 check_eqs_u0 (eqs, dvs, u0; check_length, kwargs... )
513513
514+ evaluate_varmap! (op, ps)
514515 if is_split (sys)
515516 p = MTKParameters (sys, op)
516517 else
0 commit comments