Closed mabruzzo closed 4 months ago
So going through that list, I think these missing codes fall into 2 categories: (I could be wrong about these things... - I haven't looked very carefully)
Category 1: Publicly released codes that don't provide out-of-the box support for Grackle: AREPO, Ramses
Category 2: Codes without public releases: Art-I, Art-II, COSMOS++, Gadget-3,[^1], GEAR, SPHS
Here's what I propose:
If you think it would be helpful, we could add a line in the Readme (after the list) saying the following:
"Section 8.2 of Smith et al. (2017) mentions several other codes that have implemented Grackle at one time or another."
What are your thoughts? (specifically about the line -- I'm somewhat inclined to skip it and merge this PR as is). I could also be convinced to just list everything.[^2]
[^1]: I know there's a public release of Gadget-4 (I recall that Gadget-2 was also released -- it's no longer accessible), but I don't think there was a public release of Gadget-3. Aside: Gadget-4 doesn't appear to support grackle out-of-the-box. [^2]: Simply having a longer list may be better. On the other hand, it would be more beneficial in the long term to encourage downstream codes to provide out-of-the-box support for mainline Grackle (but that point may be moot -- I doubt this list will have any direct influence on that choice)
I agree with your take here. Let's merge and code groups will be welcome to approach us and ask to be added.
I think this list is a nice way to illustrate how commonly used Grackle is. It could be nice to add this information to the documentation. If we did that, it might be optimal to convert the README from markdown to restructured text to avoid duplicating the list in multiple locations.
I'm probably missing some cases, but all codes in this initial list provide out-of-the-box support for at least some version of Grackle (and I think they all mention this in their documentation).
One thing to think about is: what is the criterion for inclusion in this list?
In fact, it may be beneficial not to explicitly adopt a firm policy and handle this on a case-by-case basis. If someone wants to add their code, we probably just address this on a case-by-case basis