Skip to content

Commit 99ed19b

Browse files
committed
Cover indepsym indexing case
1 parent cf003a3 commit 99ed19b

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

src/vector_of_array.jl

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,11 @@ Base.@propagate_inbounds function Base.getindex(A::AbstractDiffEqArray{T, N},sym
7272
end
7373

7474
if i === nothing
75-
observed(A,sym,:)
75+
if issymbollike(sym) && A.indepsym !== nothing && Symbol(sym) == A.indepsym
76+
A.t
77+
else
78+
observed(A,sym,:)
79+
end
7680
else
7781
Base.getindex.(A.u, i)
7882
end
@@ -85,7 +89,11 @@ Base.@propagate_inbounds function Base.getindex(A::AbstractDiffEqArray{T, N},sym
8589
end
8690

8791
if i === nothing
88-
observed(A,sym,args...)
92+
if issymbollike(sym) && A.indepsym !== nothing && Symbol(sym) == A.indepsym
93+
A.t[args...]
94+
else
95+
observed(A,sym,args...)
96+
end
8997
else
9098
Base.getindex.(A.u, i, args...)
9199
end

test/downstream/symbol_indexing.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,5 @@ sol_new = DiffEqArray(
2121
)
2222

2323
@test sol_new[RHS] (1 .- sol_new[x])./3.0
24+
@test sol_new[t] sol_new.t
25+
@test sol_new[t, 1:5] sol_new.t[1:5]

0 commit comments

Comments
 (0)