@@ -790,7 +790,8 @@ function get_u0_p(sys,
790790 @warn " Observed variables cannot be assigned initial values. Initial values for $u0s_in_obs will be ignored."
791791 end
792792 end
793- observedmap = todict (map (x -> x. rhs => x. lhs, observed (sys)))
793+ obs = filter! (x-> ! (x[1 ] isa Number), map (x -> x. rhs => x. lhs, observed (sys)))
794+ observedmap = isempty (obs) ? Dict () : todict (obs)
794795 defs = mergedefaults (defs, observedmap, u0map, dvs)
795796 for (k, v) in defs
796797 if Symbolics. isarraysymbolic (k)
@@ -822,7 +823,7 @@ function get_u0(
822823 if parammap != = nothing
823824 defs = mergedefaults (defs, parammap, ps)
824825 end
825- obs = map (x -> x. rhs => x. lhs, observed (sys))
826+ obs = filter! (x -> ! (x[ 1 ] isa Number), map (x -> x. rhs => x. lhs, observed (sys) ))
826827 observedmap = isempty (obs) ? Dict () : todict (obs)
827828 defs = mergedefaults (defs, observedmap, u0map, dvs)
828829 if symbolic_u0
@@ -1640,6 +1641,7 @@ function InitializationProblem{iip, specialize}(sys::AbstractODESystem,
16401641 if isempty (guesses)
16411642 guesses = Dict ()
16421643 end
1644+
16431645 u0map = merge (todict (guesses), todict (u0map))
16441646 if neqs == nunknown
16451647 NonlinearProblem (isys, u0map, parammap)
0 commit comments