Closed ChrisRackauckas closed 6 years ago
I think there's a good argument for moving the Tracy–Widom distributions out of this package; especially since the ODE solved here is numerically unstable, see
https://www-m3.ma.tum.de/foswiki/pub/M3/Allgemeines/FolkmarBornemannPublications/NumericalRMT.pdf
for better ways of computing it (either as a BVP or using Fredholm det).
Well, that paper at least shows that using ode23
is a really really bad idea. Vern8()
is probably a good method here, and using BigFloats in DiffEq would work. But yes, setting it up as a BVP is probably the way to go.
Maybe it's worth making the change you propose, but automatically use BigFloat, if you have the energy. A good example to showcase why solving ODEs with high precision is useful.
I am trying to uproot ODE.jl dependencies to make its maintenance less pressing. As a bonus you should get a bonus update. The quick update is just to change your
(ts, y)=ode23(deq, y0, [t0, t])
call tosol = solve(ODEProblem(deq, y0, (t0, t)),Tsit5();kwargs...)
. That would work, though you might want to make the function inplace as well:or use
SArray
s. You can do this by depending on just OrdinaryDiffEq + DiffEqBase instead of DifferentialEquations.jl. Let me know if you'd like a PR.