quokka-astro / quokka

Two-moment AMR radiation hydrodynamics (with self-gravity, particles, and chemistry) on CPUs/GPUs for astrophysics
https://quokka-astro.github.io/quokka/
MIT License
46 stars 12 forks source link

24.04 release notes #601

Closed chongchonghe closed 7 months ago

chongchonghe commented 7 months ago

I propose we collaborate here to document what has been changed/added since the last release (I guess it's along with the publication of the Quokka paper). We could write everything in concise bullet points. You can edit this description or write your comments below.

Quokka 24.04

Notes

We are excited to announce Quokka 24.04, the second release of Quokka, tagged with the calendar versioning (year.month). This release has been well-tested across platforms, ensuring reliable performance on CPUs (both Linux and macOS) and GPUs from NVIDIA and AMD. An automated test suite of 1D, 2D, and 3D problems is provided in the src subdirectory. Quokka continues to evolve, addressing the needs of researchers in the field.

What's Changed

  1. Dual energy formalism for hydro
  2. Hydro robustness:
    • First-order flux correction triggered for bad cells
    • Timestep retries triggered by bad cells
    • Better wavespeed estimates for the HLLC Riemann solver
  3. Self-gravity (but without AMR subcycling)
  4. Navier-Stokes Characteristic Boundary Conditions for subsonic inflows/outflows
  5. Support for openPMD/ADIOS2 outputs
  6. Support for in-situ diagnostics:
    • N-D Histograms
    • 2D Slices
    • 2D Projections
    • History file output
  7. Tracer particles
  8. Collisionless gravitating particles (CICParticles)
  9. Updated schemes for the radiation subsystem
    1. IMEX PD-ARS Scheme Implementation. The radiation subsystem and matter-radiation coupling source terms now utilize the newly implemented IMEX PD-ARS scheme for time integration, replacing the original SSP-RK2 scheme.
    2. Radiation fluxes via unmodified Riemann solver. The ad hoc modifications to the wavespeed computed in the Riemann solver is no longer necessary given the IMEX scheme's asymptotic-preserving property.
    3. A fully implicit update of the matter-radiation coupling source terms that includes up to $O(v^2/c^2)$ terms in the radiation four-force.
  10. Preliminary formulation of multigroup radiation hydrodynamics: The user can define arbitrary group edges and specify Planck-mean, flux-mean, and energy-mean opacities for each photon group as a function of gas density and temperature. This is a preliminary implementation of multigroup RHD. In our next release we will include variable opacity interpolation and multigroup radiation advection.
  11. Tabulated cooling
  12. Integration with amrex-astro/Microphysics for equation-of-state and reaction networks
    • Primordial chemistry
    • General (convex) EOS support
BenWibking commented 7 months ago

We should also use https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes to list the PRs individually.

BenWibking commented 7 months ago

Because it changes the required input parameters, I would like to merge https://github.com/quokka-astro/quokka/pull/599 before the release.

BenWibking commented 7 months ago

https://github.com/quokka-astro/quokka/pull/595 should also be merged prior to release.

BenWibking commented 7 months ago

https://github.com/quokka-astro/quokka/pull/602 should be merged prior to release.

chongchonghe commented 7 months ago

@BenWibking Do we have any tests for self gravity, chemistry, cooling, etc? Can you list them in the end?

BenWibking commented 7 months ago

@BenWibking Do we have any tests for self gravity, chemistry, cooling, etc? Can you list them in the end?

I don't think that level of detail is necessary for the release notes.

chongchonghe commented 7 months ago

@BenWibking Do we have any tests for self gravity, chemistry, cooling, etc? Can you list them in the end?

I don't think that level of detail is necessary for the release notes.

I'm listing them as example code scripts for certain features so that the user knows how to make use of them. For example, if I haven't seen popiii.cpp, I wouldn't know how to turn on self gravity in the code. Another path is to update and complete the "Test problems" page on the Documentation page, but of course, we can do that after the release.

chongchonghe commented 7 months ago

595 should also be merged prior to release.

This is replaced by #603 and merged.

602 should be merged prior to release.

This is also merged.

chongchonghe commented 7 months ago

I removed the list of new tests and pasted it below for reference. I will update the documentation page to list all the tests and what physics they are testing, but this can be done after the release.

New tests and the new features they are testing:

chongchonghe commented 7 months ago

The feature list looks good to me now.

BenWibking commented 7 months ago

I'm not sure if we should keep "more microphysics stuff." Did you intend that as a placeholder for a more specific listing?

chongchonghe commented 7 months ago

I'm not sure if we should keep "more microphysics stuff." Did you intend that as a placeholder for a more specific listing?

I removed it. It's covered by other bullets.

BenWibking commented 7 months ago

We should do this before release: https://github.com/quokka-astro/quokka/issues/605

chongchonghe commented 7 months ago

Everything looks good to me. We can probably make the release after #606 is merged if there is nothing else we need to do.

BenWibking commented 7 months ago

@chongchonghe I am about to tag the release now. My only concern is that the mention of AMD GPUs. In the docs, they are marked as "experimental, use at. your own risk" but here it suggests they work fine. Since we still have some issues, I think we should not mention AMD GPUs in the release notes for now.

BenWibking commented 7 months ago

How about this:

We are excited to announce Quokka 24.04, the second release of Quokka, tagged with the calendar versioning (year.month). Quokka continues to evolve, addressing the needs of researchers in the field.

This release has been well-tested across platforms, ensuring reliable performance on CPUs (both Linux and macOS) and GPUs from NVIDIA, with experimental support for AMD GPUs. An automated test suite of 1D, 2D, and 3D problems is provided in the src subdirectory.

BenWibking commented 7 months ago

Ok, I've created the release.