Skip to content

Commit a7ffae5

Browse files
fix: throw when observed variable not present in system
1 parent 33caa99 commit a7ffae5

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

src/systems/diffeqs/odesystem.jl

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -481,6 +481,11 @@ function build_explicit_observed_function(sys, ts;
481481
newvar = get(ns_map, var, nothing)
482482
if newvar !== nothing
483483
namespace_subs[var] = newvar
484+
var = newvar
485+
end
486+
if throw && !(var in allsyms) &&
487+
(!iscall(var) || operation(var) !== getindex || !(arguments(var)[1] in allsyms))
488+
Base.throw(ArgumentError("Symbol $var is not present in the system."))
484489
end
485490
end
486491
ts = fast_substitute(ts, namespace_subs)

0 commit comments

Comments
 (0)