Skip to content

Commit 19d6280

Browse files
fix: fix observed generation for systems without parameters
1 parent 34ea159 commit 19d6280

File tree

2 files changed

+15
-3
lines changed

2 files changed

+15
-3
lines changed

src/systems/diffeqs/odesystem.jl

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -460,9 +460,6 @@ function build_explicit_observed_function(sys, ts;
460460
else
461461
ps = (DestructuredArgs(ps, inbounds = !checkbounds),)
462462
end
463-
if isempty(ps)
464-
ps = (DestructuredArgs([]),)
465-
end
466463
dvs = DestructuredArgs(unknowns(sys), inbounds = !checkbounds)
467464
if inputs === nothing
468465
args = [dvs, ps..., ivs...]

test/nonlinearsystem.jl

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -242,3 +242,18 @@ testdict = Dict([:test => 1])
242242
@test prob_.u0 == [1.0, 2.0, 1.0]
243243
@test prob_.p == MTKParameters(sys, [a => 2.0, b => 1.0, c => 1.0])
244244
end
245+
246+
@testset "Observed function generation without parameters" begin
247+
@variables x y z
248+
249+
eqs = [0 ~ x + sin(y),
250+
0 ~ z - cos(x),
251+
0 ~ x * y]
252+
@named ns = NonlinearSystem(eqs, [x, y, z], [])
253+
ns = complete(ns)
254+
vs = [unknowns(ns); parameters(ns)]
255+
ss_mtk = structural_simplify(ns)
256+
prob = NonlinearProblem(ss_mtk, vs .=> 1.0)
257+
sol = solve(prob)
258+
@test_nowarn sol[unknowns(ns)]
259+
end

0 commit comments

Comments
 (0)