-
-
Notifications
You must be signed in to change notification settings - Fork 214
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Not fully broadcasting methods #106
Comments
We also have to get rid of lines such as https://github.com/JuliaDiffEq/OrdinaryDiffEq.jl/blob/master/src/integrators/rosenbrock_integrators.jl#L55-L57 in order to get fully broadcasting methods. Just replacing them with if typeof(mass_matrix) <: UniformScaling
W .= mass_matrix - dt*J
else
@. W = mass_matrix - dt*J
end ? |
I think there are some Runge-Kutta Nystrom methods in this list as well. |
Maybe JuliaLang/julia#23912 fixes JuliaLang/julia#22255? |
JuliaLang/julia#22255 is fixed on Julia master! |
Sadly, we still need to wait for the fix for JuliaLang/julia#28126. |
With JuliaLang/julia#30973, I got julia> @btime solve($(ODEProblem((du,u,p,t)->@.(du=0.01*u), ones(100), (0,100.))), Tsit5(), save_on=false); # loop
13.446 μs (100 allocations: 28.83 KiB)
julia> @btime solve($(ODEProblem((du,u,p,t)->@.(du=0.01*u), ones(100), (0,100.))), Tsit5(), save_on=false); # broadcast
13.075 μs (100 allocations: 28.83 KiB) 🎉 |
No, not all of them. |
#718 any others? |
Despite #104 not all methods are fully broadcasting yet. Mostly this is due to JuliaLang/julia#22255.
Methods that are not fully broadcasting (usually both not in-place and in-place versions if existent):
DP5Threaded is by design not broadcasting.
Moreover, we have to assure that also corresponding interpolation methods are broadcasting.
The text was updated successfully, but these errors were encountered: