Skip to content

Commit 152e9c2

Browse files
fix: make SII.observed support time-independent systems
1 parent e721fe7 commit 152e9c2

File tree

1 file changed

+14
-4
lines changed

1 file changed

+14
-4
lines changed

src/systems/abstractsystem.jl

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -584,10 +584,20 @@ function SymbolicIndexingInterface.is_observed(sys::AbstractSystem, sym)
584584
end
585585

586586
function SymbolicIndexingInterface.observed(sys::AbstractSystem, sym)
587-
return let _fn = build_explicit_observed_function(sys, sym)
588-
fn(u, p, t) = _fn(u, p, t)
589-
fn(u, p::MTKParameters, t) = _fn(u, p..., t)
590-
fn
587+
if is_time_dependent(sys)
588+
return let _fn = build_explicit_observed_function(sys, sym)
589+
fn1(u, p, t) = _fn(u, p, t)
590+
fn1(u, p::MTKParameters, t) = _fn(u, p..., t)
591+
fn1
592+
end
593+
else
594+
return let _fn = build_explicit_observed_function(sys, sym)
595+
fn2(u, p) = _fn(u, p)
596+
fn2(u, p::MTKParameters) = _fn(u, p...)
597+
fn2(::Nothing, p) = _fn([], p)
598+
fn2(::Nothing, p::MTKParameters) = _fn([], p...)
599+
fn2
600+
end
591601
end
592602
end
593603

0 commit comments

Comments
 (0)