|
30 | 30 | end
|
31 | 31 | @inline ODE_DEFAULT_NORM(u::Tracker.TrackedReal,t::Tracker.TrackedReal) = abs(u)
|
32 | 32 |
|
| 33 | +function DiffEqBase.concrete_solve(prob::DiffEqBase.DEProblem,alg::DiffEqBase.DEAlgorithm,u0::Tracker.TrackedArray,p::Tracker.TrackedArray,args...; |
| 34 | + sensealg=nothing,kwargs...) |
| 35 | + Tracker.track(concrete_solve,prob,alg,u0,p,args...;sensealg=sensealg,kwargs...) |
| 36 | +end |
| 37 | + |
| 38 | +function DiffEqBase.concrete_solve(prob::DiffEqBase.DEProblem,alg::DiffEqBase.DEAlgorithm,u0,p::Tracker.TrackedArray,args...; |
| 39 | + sensealg=nothing,kwargs...) |
| 40 | + Tracker.track(concrete_solve,prob,alg,u0,p,args...;sensealg=sensealg,kwargs...) |
| 41 | +end |
| 42 | + |
| 43 | +function DiffEqBase.concrete_solve(prob::DiffEqBase.DEProblem,alg::DiffEqBase.DEAlgorithm,u0::Tracker.TrackedArray,p,args...; |
| 44 | + sensealg=nothing,kwargs...) |
| 45 | + Tracker.track(concrete_solve,prob,alg,u0,p,args...;sensealg=sensealg,kwargs...) |
| 46 | +end |
| 47 | + |
33 | 48 | Tracker.@grad function concrete_solve(prob,alg,u0,p,args...;
|
34 | 49 | sensealg=nothing,kwargs...)
|
35 |
| - _concrete_solve_adjoint(prob,alg,sensealg,u0,p,args...;kwargs...) |
| 50 | + _concrete_solve_adjoint(prob,alg,sensealg,Tracker.data(u0),Tracker.data(p),args...;kwargs...) |
36 | 51 | end
|
0 commit comments