Skip to content

Commit f0fca43

Browse files
fix: fix inconsistent defaults with default_toterm variables
1 parent e7bd420 commit f0fca43

File tree

7 files changed

+22
-1
lines changed

7 files changed

+22
-1
lines changed

src/systems/diffeqs/odesystem.jl

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -238,6 +238,9 @@ function ODESystem(deqs::AbstractVector{<:Equation}, iv, dvs, ps;
238238
end
239239
defaults = todict(defaults)
240240
defaults = Dict{Any, Any}(value(k) => value(v) for (k, v) in pairs(defaults))
241+
for k in collect(keys(defaults))
242+
defaults[default_toterm(k)] = defaults[k]
243+
end
241244
var_to_name = Dict()
242245
process_variables!(var_to_name, defaults, dvs′)
243246
process_variables!(var_to_name, defaults, ps′)
@@ -410,7 +413,7 @@ function build_explicit_observed_function(sys, ts;
410413
Set(arguments(st)[1] for st in sts if iscall(st) && operation(st) === getindex))
411414

412415
observed_idx = Dict(x.lhs => i for (i, x) in enumerate(obs))
413-
param_set = Set(full_parameters(sys))
416+
param_set = Set(ps)
414417
param_set = union(param_set,
415418
Set(arguments(p)[1] for p in param_set if iscall(p) && operation(p) === getindex))
416419
param_set_ns = Set(unknowns(sys, p) for p in full_parameters(sys))

src/systems/diffeqs/sdesystem.jl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,9 @@ function SDESystem(deqs::AbstractVector{<:Equation}, neqs::AbstractArray, iv, dv
187187
end
188188
defaults = todict(defaults)
189189
defaults = Dict(value(k) => value(v) for (k, v) in pairs(defaults))
190+
for k in collect(keys(defaults))
191+
defaults[default_toterm(k)] = defaults[k]
192+
end
190193

191194
var_to_name = Dict()
192195
process_variables!(var_to_name, defaults, dvs′)

src/systems/discrete_system/discrete_system.jl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,9 @@ function DiscreteSystem(eqs::AbstractVector{<:Equation}, iv, dvs, ps;
149149
end
150150
defaults = todict(defaults)
151151
defaults = Dict(value(k) => value(v) for (k, v) in pairs(defaults))
152+
for k in collect(keys(defaults))
153+
defaults[default_toterm(k)] = defaults[k]
154+
end
152155

153156
var_to_name = Dict()
154157
process_variables!(var_to_name, defaults, dvs′)

src/systems/jumps/jumpsystem.jl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -175,6 +175,9 @@ function JumpSystem(eqs, iv, unknowns, ps;
175175
end
176176
defaults = todict(defaults)
177177
defaults = Dict(value(k) => value(v) for (k, v) in pairs(defaults))
178+
for k in collect(keys(defaults))
179+
defaults[default_toterm(k)] = defaults[k]
180+
end
178181

179182
unknowns, ps = value.(unknowns), value.(ps)
180183
var_to_name = Dict()

src/systems/nonlinear/nonlinearsystem.jl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,9 @@ function NonlinearSystem(eqs, unknowns, ps;
147147
jac = RefValue{Any}(EMPTY_JAC)
148148
defaults = todict(defaults)
149149
defaults = Dict{Any, Any}(value(k) => value(v) for (k, v) in pairs(defaults))
150+
for k in collect(keys(defaults))
151+
defaults[default_toterm(k)] = defaults[k]
152+
end
150153

151154
unknowns, ps = value.(unknowns), value.(ps)
152155
var_to_name = Dict()

src/systems/optimization/constraints_system.jl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,9 @@ function ConstraintsSystem(constraints, unknowns, ps;
134134
jac = RefValue{Any}(EMPTY_JAC)
135135
defaults = todict(defaults)
136136
defaults = Dict(value(k) => value(v) for (k, v) in pairs(defaults))
137+
for k in collect(keys(defaults))
138+
defaults[default_toterm(k)] = defaults[k]
139+
end
137140

138141
var_to_name = Dict()
139142
process_variables!(var_to_name, defaults, unknowns′)

src/systems/optimization/optimizationsystem.jl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,9 @@ function OptimizationSystem(op, unknowns, ps;
112112
end
113113
defaults = todict(defaults)
114114
defaults = Dict(value(k) => value(v) for (k, v) in pairs(defaults))
115+
for k in collect(keys(defaults))
116+
defaults[default_toterm(k)] = defaults[k]
117+
end
115118

116119
var_to_name = Dict()
117120
process_variables!(var_to_name, defaults, unknowns′)

0 commit comments

Comments
 (0)