File tree Expand file tree Collapse file tree 2 files changed +13
-2
lines changed
Expand file tree Collapse file tree 2 files changed +13
-2
lines changed Original file line number Diff line number Diff line change 11# ########################### Accessing Solution Values #####################
22
33observables(sr:: SimResult ) = observables(sr. sim)
4- observables(sim:: Simulation ) = collect(keys( sim. vals. u[ 1 ] ))
4+ observables(sim:: Simulation ) = collect(LabelledArrays . symnames(eltype( sim. vals. u) ))
55observables(sim:: MCResult ) = observables(sim[1 ])
66# parameters(sim::SimResult) = sim.scenario.prob.p
77
Original file line number Diff line number Diff line change @@ -231,12 +231,23 @@ end
231231
232232# copy fix is tmp needed not to rewrite SavedValues with new simulation
233233Simulation(sv:: SavedValues , params, status) = Simulation(
234- DiffEqArray(copy(sv . u),copy(sv . t) ),
234+ SciMLBase . RecursiveArrayTools . DiffEqArray(sv ),
235235 copy(sv. scope),
236236 params,
237237 Symbol(status)
238238)
239239
240+ function SciMLBase. RecursiveArrayTools. DiffEqArray(sv:: SavedValues , p= nothing ; safetycopy= true )
241+ vec = sv. u
242+ ts = sv. t
243+ vars = ! isempty(vec) ? collect(symbols(vec[1 ])) : []
244+ if safetycopy
245+ return SciMLBase. RecursiveArrayTools. DiffEqArray(copy(vec), copy(ts), p; variables = vars)
246+ else
247+ return SciMLBase. RecursiveArrayTools. DiffEqArray(vec, ts, p; variables = vars)
248+ end
249+ end
250+
240251status(s:: Simulation ) = s. status
241252times(s:: Simulation ) = s. vals. t
242253vals(s:: Simulation ) = s. vals. u
You can’t perform that action at this time.
0 commit comments