-
Notifications
You must be signed in to change notification settings - Fork 11
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
More flexible processing of ODEs #19
More flexible processing of ODEs #19
Conversation
…ethod factory pattern
…ror handler to warn
…ency tree: cleanup
I read through the docs, code and tests, and I set up an environment, ran the test suite, You should have at least one sentence docstring for each element of your API, currently several are empty. If the API element is not for public consumption, it should be prefixed with a Python's coding conventions are ignored in several places, and while I think that can become a yak-shaving thing, I would suggest applying autopep8 or black once just to get it all into shape, and then forget about it. There are a few functions that are a bit long for my taste (30 to 50 lines, nested control flow), but you should take into account your fellow developers and their taste as well. Finally, I want to point out that Scipy's odeint does automatic switching between stiff and non-stiff methods and can return method choice and step size information for every step, sol, info = scipy.integrate.odeint(f, y0, t, (), jac, full_output=True)
step_size_per_step = info['hu']
method_used_per_step = info['mused']
stiff_steps = (method_used_per_step == 2).sum()
non_stiff_steps = sol.size - stiff_steps
# etc given your API, it would be straightforward to provide this as a fallback when PyGSL is not available (and looking at PyGSL's website does not inspire confidence as a long-term dependency). That's all, for now; if you want me to look at other things, let me know. |
Thank you for the feedback and your kind words! We went through your review and have addressed the points that you raised in the following way:
As no radical changes were made to ODE-toolbox, we feel it would not be necessary to perform a formal second round of reviews. We are very grateful for your comments and will continue our improvements to ODE-toolbox on their basis! |
Notes for reviewers:
Potential improvements (all of these are mentioned in the documentation):