You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I would like to be able to use SciMLOperators in an in-place ODEFunction, with a solver that does autodiff using ForwardDiff.jl. Here is an example:
using SciMLOperators, DifferentialEquations
op =FunctionOperator((du,u,p,t) -> du .= u .* u, rand(10), t=0.0, p=[0.0], batch=true)
op =cache_operator(op, rand(10))
prob =ODEProblem{true}(op, rand(10), (0.0,1.0), [0.0])
solve(prob, Rosenbrock23())
Currently, the above code doesn't work, presumably owing to the operator cache being Float64s rather than dual numbers.
The text was updated successfully, but these errors were encountered:
The cache in this case would need to be a PreallocationTools.DualCache object so it could dispatch to different forms on command. That's definitely possible.
Is your feature request related to a problem? Please describe.
The problem is described here: https://discourse.julialang.org/t/how-to-use-scimloperators-jl-with-autograd-in-differentialequations-jl/117731
Describe the solution you’d like
I would like to be able to use SciMLOperators in an in-place ODEFunction, with a solver that does autodiff using ForwardDiff.jl. Here is an example:
Currently, the above code doesn't work, presumably owing to the operator cache being Float64s rather than dual numbers.
The text was updated successfully, but these errors were encountered: