Skip to content

Commit ba82445

Browse files
feat: allow nothing to override retained values in remake_initializeprob
1 parent 62c2f09 commit ba82445

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
@@ -246,6 +246,11 @@ function SciMLBase.remake_initializeprob(sys::ODESystem, odefn, u0, t0, p)
246246
u0 = todict(u0)
247247
defs = defaults(sys)
248248
varmap = merge(defs, u0)
249+
for k in collect(keys(varmap))
250+
if varmap[k] === nothing
251+
delete!(varmap, k)
252+
end
253+
end
249254
varmap = canonicalize_varmap(varmap)
250255
missingvars = setdiff(unknowns(sys), collect(keys(varmap)))
251256
setobserved = filter(keys(varmap)) do var
@@ -272,6 +277,16 @@ function SciMLBase.remake_initializeprob(sys::ODESystem, odefn, u0, t0, p)
272277
p = merge(meta.pmap, p)
273278
end
274279
end
280+
for k in collect(keys(u0))
281+
if u0[k] === nothing
282+
delete!(u0, k)
283+
end
284+
end
285+
for k in collect(keys(p))
286+
if p[k] === nothing
287+
delete!(p, k)
288+
end
289+
end
275290

276291
initprob = InitializationProblem(sys, t0, u0, p)
277292
initprobmap = getu(initprob, unknowns(sys))

0 commit comments

Comments
 (0)