Skip to content
This repository has been archived by the owner on Sep 9, 2024. It is now read-only.

Possibly implement dopri5 #25

Closed
jtravs opened this issue Mar 5, 2014 · 4 comments · Fixed by #68
Closed

Possibly implement dopri5 #25

jtravs opened this issue Mar 5, 2014 · 4 comments · Fixed by #68

Comments

@jtravs
Copy link

jtravs commented Mar 5, 2014

Just a suggestion, but as discussed here: JuliaLang/julia#75 (comment)
One way around the licensing issues with the current ODE codes is to derive codes from the solvers at:
http://www.unige.ch/~hairer/software.html

In particular the MATLAB ode45 is very similar to the dopri5 code at:
http://www.unige.ch/~hairer/prog/nonstiff/dopri5.f
and this is the same set of coefficients used in ODE.jl (the Dormand and Prince pair).

These solvers are BSD licensed, are of very high quality, are theoretically explained in detail in the books by the authors:
Hairer, Norsett and Wanner (1993): Solving Ordinary Differential Equations. Nonstiff Problems. 2nd edition. Springer Series in Comput. Math., vol. 8.

What is particularly nice about dopri5 is the dense output. i.e. if the ODE solver takes a natural step from t0 to t1 based on the error control, dense output is efficiently available anywhere between t0 and t1.

@helgee
Copy link

helgee commented Mar 20, 2014

I have an almost complete Julia port of DOP853 (missing the dense output functionality). Since it shares a lot of code with DOPRI5 I should be able to implement dense output and prepare a PR with both integrators on the weekend (or sometime next week the latest).

@acroy
Copy link
Contributor

acroy commented Mar 20, 2014

@helgee : Cool! You could also submit it as it is and mark the PR as "work in progress" (the dense output could then be added at a later stage). It might be interesting to compare the performance to the embedded RK solvers we have now (which don't have dense output either). In #16 I have added a (crude) performance test, which should be sufficient to roughly compare the methods.

@acroy
Copy link
Contributor

acroy commented Mar 20, 2014

I have to add that the methods in master are slowed down due to #29. But this is fixed in #16.

@helgee helgee mentioned this issue Mar 20, 2014
5 tasks
@helgee
Copy link

helgee commented Mar 20, 2014

Done: #33

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants