Skip to content
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

Implement the IAS15 integrator #637

Open
johnwez1 opened this issue Mar 22, 2024 · 3 comments
Open

Implement the IAS15 integrator #637

johnwez1 opened this issue Mar 22, 2024 · 3 comments
Labels

Comments

@johnwez1
Copy link

Description

Add the integrator described in https://arxiv.org/abs/1409.4779 and widely used in other software libraries.

I would like to pick this up if nobody is currently working on it. I have an implementation in C of the original Everhart algorithm (RADAU) and should be just a few additions to my current code for IAS15.

Additional context

@jobovy
Copy link
Owner

jobovy commented Mar 22, 2024

Hi,

Thanks for the suggestion and especially for the offer to help! This has been on the galpy to-do list for a long time, so it would be great to add this! Few comments:

  • Note that we can't re-use any of rebound's code due to the license being incompatible (GPL vs. BSD here). Sounds like you have an independent implementation, so that wouldn't be a problem.
  • In general it's useful to have both a Python and C version, but given that installing the C code is quite straightforward these days, just doing C would be fine (that's what people would be using anyway)
  • The dop853 integrator in C is probably a good reference point for how to hook up the integrator to galpy:
    void dop853(void(*func)(double t, double *q, double *a, int nargs, struct potentialArg * potentialArgs),
  • Best way to proceed would be for you to fork, make an ias15 branch, implement as much as you can, and open a Pull Request. I'll then be happy to help with any issues integrating (ha!) the integrator into galpy and with adding test and documentation.

@johnwez1
Copy link
Author

  • Note that we can't re-use any of rebound's code due to the license being incompatible (GPL vs. BSD here). Sounds like you have an independent implementation, so that wouldn't be a problem.

Yes, I followed the original Everhart paper and I don't believe the sample Fortran code at the end is under any license.

Copy link

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If the issue has been resolved since the last activity, please close the issue. Thank you for your contributions.

@jobovy jobovy added pinned and removed wontfix labels May 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants