Skip to content

Commit 3632dc6

Browse files
Merge pull request #2516 from AayushSabharwal/as/symbolic-save-idxs
refactor: use `SciMLBase.get_save_idxs_and_saved_subsystem`
2 parents ad7891e + 6a9e7ea commit 3632dc6

File tree

2 files changed

+2
-24
lines changed

2 files changed

+2
-24
lines changed

lib/OrdinaryDiffEqCore/Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ Random = "<0.0.1, 1"
7070
RecursiveArrayTools = "2.36, 3"
7171
Reexport = "1.0"
7272
SafeTestsets = "0.1.0"
73-
SciMLBase = "2.57.2"
73+
SciMLBase = "2.59.2"
7474
SciMLOperators = "0.3"
7575
SciMLStructures = "1"
7676
SimpleUnPack = "1"

lib/OrdinaryDiffEqCore/src/solve.jl

Lines changed: 1 addition & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -264,29 +264,7 @@ function DiffEqBase.__init(
264264
end
265265

266266
### Algorithm-specific defaults ###
267-
if save_idxs === nothing
268-
saved_subsystem = nothing
269-
else
270-
if !(save_idxs isa AbstractArray) || symbolic_type(save_idxs) != NotSymbolic()
271-
_save_idxs = [save_idxs]
272-
else
273-
_save_idxs = save_idxs
274-
end
275-
saved_subsystem = SciMLBase.SavedSubsystem(prob, parameter_values(prob), _save_idxs)
276-
if saved_subsystem !== nothing
277-
_save_idxs = SciMLBase.get_saved_state_idxs(saved_subsystem)
278-
if isempty(_save_idxs)
279-
# no states to save
280-
save_idxs = Int[]
281-
elseif !(save_idxs isa AbstractArray) || symbolic_type(save_idxs) != NotSymbolic()
282-
# only a single state to save, and save it as a scalar timeseries instead of
283-
# single-element array
284-
save_idxs = only(_save_idxs)
285-
else
286-
save_idxs = _save_idxs
287-
end
288-
end
289-
end
267+
save_idxs, saved_subsystem = SciMLBase.get_save_idxs_and_saved_subsystem(prob, save_idxs)
290268

291269
if save_idxs === nothing
292270
ksEltype = Vector{rateType}

0 commit comments

Comments
 (0)