Skip to content

Commit 5cac0ca

Browse files
fix: various bug and test fixes
1 parent 03b987e commit 5cac0ca

File tree

4 files changed

+12
-8
lines changed

4 files changed

+12
-8
lines changed

src/systems/abstractsystem.jl

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -475,10 +475,12 @@ function SymbolicIndexingInterface.parameter_index(sys::AbstractSystem, sym)
475475
end
476476
elseif iscall(sym) && operation(sym) === getindex &&
477477
(idx = parameter_index(ic, first(arguments(sym)))) !== nothing
478-
if idx.portion isa SciMLStructures.Discrete && idx.idx[2] == idx.idx[3] == nothing
478+
if idx.portion isa SciMLStructures.Discrete &&
479+
idx.idx[2] == idx.idx[3] == nothing
479480
return nothing
480481
else
481-
ParameterIndex(idx.portion, (idx.idx..., arguments(sym)[(begin + 1):end]...))
482+
ParameterIndex(
483+
idx.portion, (idx.idx..., arguments(sym)[(begin + 1):end]...))
482484
end
483485
else
484486
nothing
@@ -498,7 +500,8 @@ end
498500
function SymbolicIndexingInterface.parameter_index(sys::AbstractSystem, sym::Symbol)
499501
if has_index_cache(sys) && (ic = get_index_cache(sys)) !== nothing
500502
idx = parameter_index(ic, sym)
501-
if idx === nothing || idx.portion isa SciMLStructures.Discrete && idx.idx[2] == idx.idx[3] == 0
503+
if idx === nothing ||
504+
idx.portion isa SciMLStructures.Discrete && idx.idx[2] == idx.idx[3] == 0
502505
return nothing
503506
else
504507
return idx

src/systems/parameter_buffer.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,7 @@ function MTKParameters(
158158
end
159159
end
160160
tunable_buffer = narrow_buffer_type.(tunable_buffer)
161-
disc_buffer = narrow_buffer_type.(disc_buffer)
161+
disc_buffer = broadcast.(narrow_buffer_type, disc_buffer)
162162
const_buffer = narrow_buffer_type.(const_buffer)
163163
# Don't narrow nonnumeric types
164164
nonnumeric_buffer = nonnumeric_buffer
@@ -545,7 +545,7 @@ function SymbolicIndexingInterface.remake_buffer(indp, oldbuf::MTKParameters, va
545545
@set! newbuf.dependent = narrow_buffer_type_and_fallback_undefs.(
546546
oldbuf.dependent,
547547
split_into_buffers(
548-
newbuf.dependent_update_oop(newbuf...), oldbuf.dependent, Val(false)))
548+
newbuf.dependent_update_oop(newbuf...), oldbuf.dependent, Val(0)))
549549
end
550550
return newbuf
551551
end

test/mtkparameters.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -344,8 +344,8 @@ with_updated_parameter_timeseries_values(
344344
# yd2 => 2.0 + Sample(ssc)(x), Sample(t, dt)(x) => x,
345345
# Sample(ssc)(x) => x, Hold(yd1) => yd1, Hold(yd2) => yd2],
346346
# [x => 3.0])
347-
ps = MTKParameters((), SizedVector{2}([([1.0, 2.0, 3.0], [false]), ([4.0, 5.0, 6.0], Bool[])]), (), (), (), nothing, nothing)
348-
@test SciMLBase.get_saveable_values(ps, 1).x isa Tuple{Vector{Float64}, Vector{Bool}}
347+
ps = MTKParameters((), SizedVector{2}([([1.0, 2.0, 3.0], falses(1)), ([4.0, 5.0, 6.0], falses(0))]), (), (), (), nothing, nothing)
348+
@test SciMLBase.get_saveable_values(ps, 1).x isa Tuple{Vector{Float64}, BitVector}
349349
# tsidx1 = timeseries_parameter_index(sys, flag).timeseries_idx
350350
# tsidx2 = 3 - tsidx1
351351
tsidx1 = 1

test/symbolic_indexing_interface.jl

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ using SciMLStructures: Tunable
1919
@test parameter_index(odesys, a) isa ParameterIndex{Tunable, Tuple{Int, Int}}
2020
@test parameter_index(odesys, b) == parameter_index(odesys, :b)
2121
@test parameter_index(odesys, b) isa ParameterIndex{Tunable, Tuple{Int, Int}}
22-
@test parameter_index.((odesys,), [x, y, t, ParameterIndex(Tunable(), (1, 1)), :x, :y,]) ==
22+
@test parameter_index.(
23+
(odesys,), [x, y, t, ParameterIndex(Tunable(), (1, 1)), :x, :y]) ==
2324
[nothing, nothing, nothing, ParameterIndex(Tunable(), (1, 1)), nothing, nothing]
2425
@test isequal(parameter_symbols(odesys), [a, b])
2526
@test all(is_independent_variable.((odesys,), [t, :t]))

0 commit comments

Comments
 (0)