Skip to content

Commit 1a20cbc

Browse files
fix: don't use observed equations for initialization of DiscreteSystem
1 parent 0681ec9 commit 1a20cbc

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

src/systems/nonlinear/initializesystem.jl

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,10 @@ function generate_initializesystem(sys::AbstractSystem;
220220
pars = [pars; map(unwrap, collect(keys(new_params)))]
221221
is_time_dependent(sys) && push!(pars, get_iv(sys))
222222

223-
if is_time_dependent(sys)
223+
# FIXME: observed equations for discrete systems are broken. They don't express
224+
# relations at the current time and instead express them in terms of past values.
225+
# This precludes them from being useful in initialization.
226+
if is_time_dependent(sys) && !(sys isa DiscreteSystem)
224227
# 8) use observed equations for guesses of observed variables if not provided
225228
for eq in trueobs
226229
haskey(defs, eq.lhs) && continue

0 commit comments

Comments
 (0)