Skip to content

Commit 2802ba9

Browse files
feat: allow nothing to override retained values in remake_initializeprob
1 parent 65977c4 commit 2802ba9

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

src/systems/nonlinear/initializesystem.jl

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,11 @@ function SciMLBase.remake_initializeprob(sys::ODESystem, odefn, u0, t0, p)
260260
u0 = todict(u0)
261261
defs = defaults(sys)
262262
varmap = merge(defs, u0)
263+
for k in collect(keys(varmap))
264+
if varmap[k] === nothing
265+
delete!(varmap, k)
266+
end
267+
end
263268
varmap = canonicalize_varmap(varmap)
264269
missingvars = setdiff(unknowns(sys), collect(keys(varmap)))
265270
setobserved = filter(keys(varmap)) do var
@@ -286,6 +291,16 @@ function SciMLBase.remake_initializeprob(sys::ODESystem, odefn, u0, t0, p)
286291
p = merge(meta.pmap, p)
287292
end
288293
end
294+
for k in collect(keys(u0))
295+
if u0[k] === nothing
296+
delete!(u0, k)
297+
end
298+
end
299+
for k in collect(keys(p))
300+
if p[k] === nothing
301+
delete!(p, k)
302+
end
303+
end
289304

290305
initprob = InitializationProblem(sys, t0, u0, p)
291306
initprobmap = getu(initprob, unknowns(sys))

0 commit comments

Comments
 (0)