版本发布 3
This release introduces an extensible particle architecture and fixes a bug in the particle advance that could cause crashes in earlier versions of Quokka. ## Major changes * Particles now obey a "particle CFL" timestepping restriction, which prevents them from escaping from the grids they lived on during the previous timestep. (See #912 by @chongchonghe.) * Extensible particle architecture based on templated polymorphism by @chongchonghe in https://github.com/quokka-astro/quokka/pull/891 * Particle creator and destructor by @chongchonghe in https://github.com/quokka-astro/quokka/pull/896 and https://github.com/quokka-astro/quokka/pull/927 ## Other changes * set default max_timesteps to INT_MAX by @BenWibking in https://github.com/quokka-astro/quokka/pull/876 * allow disabling energy check in Sedov problem by @BenWibking in https://github.com/quokka-astro/quokka/pull/875 * add git hash to metadata output by @BenWibking in https://github.com/quokka-astro/quokka/pull/888 * add Fields.yaml in particle plotfile/checkpoint by @chongchonghe in https://github.com/quokka-astro/quokka/pull/935 * Compile-time particle switch with Bitwise Operations by @chongchonghe in https://github.com/quokka-astro/quokka/pull/911 **Full Changelog**: https://github.com/quokka-astro/quokka/compare/25.01...25.03
Notable changes in this release include a code reorganization into subdirectories, hydro robustness updates in the presence of source terms, piecewise power-law opacity models for multigroup radiation, additional ISM physics in the radiation solver, support for unit systems (with metadata included in output files), and enforcement of a minimum version of the AMD ROCm toolkit (to avoid compiler bugs). ## Known issues * Self-gravitating particles may traverse more than one cell per timestep, which can cause crashes (see https://github.com/quokka-astro/quokka/pull/833). This will be fixed in a future release of Quokka. ## Major changes * If microphysics burn fails, retry hydro by @psharda in https://github.com/quokka-astro/quokka/pull/615 * Retry hydro update if cooling solve fails by @BenWibking in https://github.com/quokka-astro/quokka/pull/616 * Mean opacity for variable kappa based on piecewise-power-law approximation by @chongchonghe in https://github.com/quokka-astro/quokka/pull/626 * PPL opacity models by @chongchonghe in https://github.com/quokka-astro/quokka/pull/678 * Random blast ISM problem by @BenWibking in https://github.com/quokka-astro/quokka/pull/179 * Reorganize source code into subdirectories by @BenWibking in https://github.com/quokka-astro/quokka/pull/689 * Rename RadhydroSimulation class to QuokkaSimulation by @chongchonghe in https://github.com/quokka-astro/quokka/pull/702 * Dust temperature coupled to gas and radiation by @chongchonghe in https://github.com/quokka-astro/quokka/pull/715 * Update microphysics to include metal chemistry by @psharda in https://github.com/quokka-astro/quokka/pull/725 * Improve convergence rate of the radiation Newton-Raphson solver by @chongchonghe in https://github.com/quokka-astro/quokka/pull/720 * Separate single- and multi-group radiation modules by @chongchonghe in https://github.com/quokka-astro/quokka/pull/731 * A robust numerical scheme for the dust-gas coupling model by @chongchonghe in https://github.com/quokka-astro/quokka/pull/733 * Photoelectric heating by @chongchonghe in https://github.com/quokka-astro/quokka/pull/766 * Line cooling and cosmic ray heating by @chongchonghe in https://github.com/quokka-astro/quokka/pull/773 * Add support for unit systems: CGS, CONSTANTS, CUSTOM by @chongchonghe in https://github.com/quokka-astro/quokka/pull/782 * Enforce minimum ROCm version >= 6.3 by @BenWibking in https://github.com/quokka-astro/quokka/pull/843 ## All changes (except submodule updates and CI changes) * Update some default values for the PopIII test by @psharda in https://github.com/quokka-astro/quokka/pull/613 * Use mass scalars while computing EOS quantities in NSCBC by @psharda in https://github.com/quokka-astro/quokka/pull/610 * Print timestep info in scientific notation by @psharda in https://github.com/quokka-astro/quokka/pull/614 * If microphysics burn fails, retry hydro by @psharda in https://github.com/quokka-astro/quokka/pull/615 * retry hydro update if cooling solve fails by @BenWibking in https://github.com/quokka-astro/quokka/pull/616 * Changed parameters in pulse_grey test to reduce runtime by @chongchonghe in https://github.com/quokka-astro/quokka/pull/625 * change initial condition of RadForce by @chongchonghe in https://github.com/quokka-astro/quokka/pull/627 * Mean opacity for variable kappa based on piecewise-power-law approximation by @chongchonghe in https://github.com/quokka-astro/quokka/pull/626 * Fix GPU problems in pulse_MG.cpp by @chongchonghe in https://github.com/quokka-astro/quokka/pull/629 * Add "copy" button to the sphinx documentation page. by @chongchonghe in https://github.com/quokka-astro/quokka/pull/609 * Fix radiation transport error in Y and Z directions. by @chongchonghe in https://github.com/quokka-astro/quokka/pull/633 * Add citation to quokka paper by @psharda in https://github.com/quokka-astro/quokka/pull/577 * quokka::EOS code linting by @BenWibking in https://github.com/quokka-astro/quokka/pull/578 * remove old debugging code from ODE integrator by @BenWibking in https://github.com/quokka-astro/quokka/pull/645 * Update perturbation.py for NumPy 2.0 compatibility by @BenWibking in https://github.com/quokka-astro/quokka/pull/656 * update docs re Intel GPUs by @BenWibking in https://github.com/quokka-astro/quokka/pull/654 * Delete perfdata directory by @BenWibking in https://github.com/quokka-astro/quokka/pull/655 * Use specific Intel compiler version in CI by @BenWibking in https://github.com/quokka-astro/quokka/pull/658 * update shock-cloud problem by @BenWibking in https://github.com/quokka-astro/quokka/pull/350 * remove unnecessary EnforceLimits on old state by @BenWibking in https://github.com/quokka-astro/quokka/pull/668 * no ghost cells in reference solution multifab by @BenWibking in https://github.com/quokka-astro/quokka/pull/671 * Update microphysics: primordial chemistry actual_rhs updated to speedup chemistry by @psharda in https://github.com/quokka-astro/quokka/pull/673 * random blast ISM problem by @BenWibking in https://github.com/quokka-astro/quokka/pull/179 * simplify EnforceLimits by @BenWibking in https://github.com/quokka-astro/quokka/pull/667 * update Setonix config by @BenWibking in https://github.com/quokka-astro/quokka/pull/676 * update Setonix job scripts by @BenWibking in https://github.com/quokka-astro/quokka/pull/677 * PPL opacity models by @chongchonghe in https://github.com/quokka-astro/quokka/pull/678 * remove unused function ComputeSourceTermsExplicit by @chongchonghe in https://github.com/quokka-astro/quokka/pull/682 * Add VSCode/Codespaces Dev Container settings by @BenWibking in https://github.com/quokka-astro/quokka/pull/687 * fix Sphinx warnings by @BenWibking in https://github.com/quokka-astro/quokka/pull/688 * reorganize source code into subdirectories by @BenWibking in https://github.com/quokka-astro/quokka/pull/689 * Clean up code for single-group radiation by @chongchonghe in https://github.com/quokka-astro/quokka/pull/684 * Update citations by @chongchonghe in https://github.com/quokka-astro/quokka/pull/690 * add equations to docs by @BenWibking in https://github.com/quokka-astro/quokka/pull/691 * update docs for runtime parameters by @BenWibking in https://github.com/quokka-astro/quokka/pull/697 * Rename RadhydroSimulation class to QuokkaSimulation by @chongchonghe in https://github.com/quokka-astro/quokka/pull/702 * CUDA 12.6 hotfix by @BenWibking in https://github.com/quokka-astro/quokka/pull/708 * Use MkDocs to generate documentation by @chongchonghe in https://github.com/quokka-astro/quokka/pull/705 * Metal Advection Problem by @aditivijayan in https://github.com/quokka-astro/quokka/pull/704 * Revert "Metal Advection Problem" by @BenWibking in https://github.com/quokka-astro/quokka/pull/710 * fix Setonix compiler version by @BenWibking in https://github.com/quokka-astro/quokka/pull/709 * Upload results even if regression tests fail by @BenWibking in https://github.com/quokka-astro/quokka/pull/711 * Cleanup: remove repeating calculation of kappa by @chongchonghe in https://github.com/quokka-astro/quokka/pull/714 * Dust temperature coupled to gas and radiation by @chongchonghe in https://github.com/quokka-astro/quokka/pull/715 * Make assertion work in the exchange step and dust temperature solution step by @chongchonghe in https://github.com/quokka-astro/quokka/pull/716 * Redefine PRIMORDIAL_CHEM preprocessor as CHEMISTRY by @psharda in https://github.com/quokka-astro/quokka/pull/724 * Update microphysics to include metal chemistry by @psharda in https://github.com/quokka-astro/quokka/pull/725 * improve convergence rate of the radiation Newton-Raphson solver by @chongchonghe in https://github.com/quokka-astro/quokka/pull/720 * Separate single- and multi-group radiation modules by @chongchonghe in https://github.com/quokka-astro/quokka/pull/731 * Restructure AddSourceTermsMultiGroup by @chongchonghe in https://github.com/quokka-astro/quokka/pull/734 * A robust numerical scheme for the dust-gas coupling model by @chongchonghe in https://github.com/quokka-astro/quokka/pull/733 * Update Dockerfile by @BenWibking in https://github.com/quokka-astro/quokka/pull/741 * Create CODEOWNERS by @BenWibking in https://github.com/quokka-astro/quokka/pull/749 * Restructure: put radiation flux update into a function by @chongchonghe in https://github.com/quokka-astro/quokka/pull/750 * Update README.md to list Python as required by @BenWibking in https://github.com/quokka-astro/quokka/pull/753 * Add OpenSSF Security Scorecard action by @BenWibking in https://github.com/quokka-astro/quokka/pull/736 * Add a CUDA devcontainer by @chongchonghe in https://github.com/quokka-astro/quokka/pull/751 * fix bug in make_tarball.py by @BenWibking in https://github.com/quokka-astro/quokka/pull/755 * Restructure: define ComputeModelBasedKappaEAndKappaP by @chongchonghe in https://github.com/quokka-astro/quokka/pull/767 * photoelectric heating by @chongchonghe in https://github.com/quokka-astro/quokka/pull/766 * Move enable_dust_gas_thermal_coupling_model to ISM_Traits by @chongchonghe in https://github.com/quokka-astro/quokka/pull/771 * fix 'pure virtual method called' error by @chongchonghe in https://github.com/quokka-astro/quokka/pull/774 * Line cooling and cosmic ray heating by @chongchonghe in https://github.com/quokka-astro/quokka/pull/773 * Speed up unit tests by running ctest in parallel by @chongchonghe in https://github.com/quokka-astro/quokka/pull/784 * Add script to make a movie from simulation images by @BenWibking in https://github.com/quokka-astro/quokka/pull/779 * Add support for unit systems: CGS, CONSTANTS, CUSTOM by @chongchonghe in https://github.com/quokka-astro/quokka/pull/782 * Write 2D plotfiles for projections by @BenWibking in https://github.com/quokka-astro/quokka/pull/791 * remove scripts to run on Summit by @BenWibking in https://github.com/quokka-astro/quokka/pull/793 * Disable building unused linear solvers from AMReX by @BenWibking in https://github.com/quokka-astro/quokka/pull/794 * update yt: replace AMReXDataset with yt.load by @chongchonghe in https://github.com/quokka-astro/quokka/pull/797 * fix flags for NVHPC compiler by @BenWibking in https://github.com/quokka-astro/quokka/pull/799 * add 'cellUpdates_ > 0' check by @chongchonghe in https://github.com/quokka-astro/quokka/pull/808 * fix openPMD plotfile output by @BenWibking in https://github.com/quokka-astro/quokka/pull/804 * Add radiation-driven shell to regression tests by @BenWibking in https://github.com/quokka-astro/quokka/pull/810 * Use RSLA in all dust tests by @chongchonghe in https://github.com/quokka-astro/quokka/pull/811 * add scripts to run on Frontier by @BenWibking in https://github.com/quokka-astro/quokka/pull/813 * Update ROCm version in dependencies_hip.sh by @BenWibking in https://github.com/quokka-astro/quokka/pull/816 * Fixes for Setonix by @BenWibking in https://github.com/quokka-astro/quokka/pull/817 * rename {x,y,z}-velocity to {x,y,z}-RiemannSolverVelocity in plotfiles by @BenWibking in https://github.com/quokka-astro/quokka/pull/818 * add print_cycle_timing runtime option by @BenWibking in https://github.com/quokka-astro/quokka/pull/819 * Reduce walltime for RandomBlast regression test by @BenWibking in https://github.com/quokka-astro/quokka/pull/822 * Enforce minimum ROCm version >= 6.3 by @BenWibking in https://github.com/quokka-astro/quokka/pull/843 * Update docs for AMD GPUs by @BenWibking in https://github.com/quokka-astro/quokka/pull/845 * Temporary workaround for gcc 14 libstdc++ incompatibility with HIP by @BenWibking in https://github.com/quokka-astro/quokka/pull/857 **Full Changelog**: https://github.com/quokka-astro/quokka/compare/24.04...25.01
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 (see the documentation for details). An automated test suite of 1D, 2D, and 3D problems is provided in the `src` subdirectory. Release managers for this release: @chongchonghe @BenWibking ## 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 4. Self-gravity (but without AMR subcycling) 5. Navier-Stokes Characteristic Boundary Conditions for subsonic inflows/outflows 6. Support for openPMD/ADIOS2 outputs 7. Support for in-situ diagnostics: - N-D Histograms - 2D Slices - 2D Projections - History file output 8. Tracer particles 9. Collisionless gravitating particles (`CICParticles`) 10. 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. 11. 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. 12. Tabulated cooling 13. Integration with amrex-astro/Microphysics for equation-of-state and reaction networks - Primordial chemistry - General (convex) EOS support ## Changelog (Submodule version updates are omitted from this list.) * implement carbuncle-free low-dissipation HLLC solver by @BenWibking in https://github.com/quokka-astro/quokka/pull/18 * implement first-order flux correction (FOFC) for hydro by @BenWibking in https://github.com/quokka-astro/quokka/pull/25 * add optically-thin cooling (radiative, collisional, etc.) by @BenWibking in https://github.com/quokka-astro/quokka/pull/24 * Robustness fixes for cooling + AMR by @BenWibking in https://github.com/quokka-astro/quokka/pull/28 * More cooling solver fixes by @BenWibking in https://github.com/quokka-astro/quokka/pull/30 * Enable regridding on AMR subcycles by @BenWibking in https://github.com/quokka-astro/quokka/pull/31 * Enable Debug + ASAN in CI by @BenWibking in https://github.com/quokka-astro/quokka/pull/32 * Add performance hints by @BenWibking in https://github.com/quokka-astro/quokka/pull/39 * add automated test for carbuncle instability by @BenWibking in https://github.com/quokka-astro/quokka/pull/40 * inline ComputeVelocityDifferences into ComputeFluxes by @conradtchan in https://github.com/quokka-astro/quokka/pull/35 * add energy checks to Sedov test by @BenWibking in https://github.com/quokka-astro/quokka/pull/41 * Fuse PPM reconstruction kernels by @conradtchan in https://github.com/quokka-astro/quokka/pull/36 * pause simulation to flush async outputs if needed by @BenWibking in https://github.com/quokka-astro/quokka/pull/43 * add support for Chombo-format HDF5 plotfile outputs by @BenWibking in https://github.com/quokka-astro/quokka/pull/44 * allow building device code with Clang by @BenWibking in https://github.com/quokka-astro/quokka/pull/42 * add support for Ascent by @BenWibking in https://github.com/quokka-astro/quokka/pull/29 * add max_walltime parameter by @BenWibking in https://github.com/quokka-astro/quokka/pull/46 * fix carbuncle correction in 2D by @BenWibking in https://github.com/quokka-astro/quokka/pull/48 * add Sedov verification scripts and notebook by @BenWibking in https://github.com/quokka-astro/quokka/pull/49 * add stop_time, plotfile_interval, and checkpoint_interval parameters by @BenWibking in https://github.com/quokka-astro/quokka/pull/51 * add CFL-respecting AMR subcycling by @BenWibking in https://github.com/quokka-astro/quokka/pull/52 * add CONTRIBUTING.md based on AMReX's version by @BenWibking in https://github.com/quokka-astro/quokka/pull/54 * add auxiliary internal energy equation for high-Mach flows by @BenWibking in https://github.com/quokka-astro/quokka/pull/27 * include ghost cells in plotfiles and ascent renders by @BenWibking in https://github.com/quokka-astro/quokka/pull/55 * allow arbitrary number of scalars in riemann solver by @BenWibking in https://github.com/quokka-astro/quokka/pull/56 * rename EOS_Traits to HydroSystem_Traits by @BenWibking in https://github.com/quokka-astro/quokka/pull/60 * add passive scalars by @BenWibking in https://github.com/quokka-astro/quokka/pull/61 * add passive scalar test problem by @BenWibking in https://github.com/quokka-astro/quokka/pull/62 * adjust dual energy 'eta' parameter by @BenWibking in https://github.com/quokka-astro/quokka/pull/59 * avoid allocating radiation variables for hydro-only problems by @BenWibking in https://github.com/quokka-astro/quokka/pull/64 * add ascent_interval runtime parameter by @BenWibking in https://github.com/quokka-astro/quokka/pull/65 * use fast scaled interpolation of cooling tables by @BenWibking in https://github.com/quokka-astro/quokka/pull/66 * arm64 build fix by @BenWibking in https://github.com/quokka-astro/quokka/pull/72 * make functions accessed in initializer list static by @BenWibking in https://github.com/quokka-astro/quokka/pull/77 * fix initial conditions in HydroQuirk by @BenWibking in https://github.com/quokka-astro/quokka/pull/76 * change the way CMake finds Python headers by @BenWibking in https://github.com/quokka-astro/quokka/pull/79 * add reconstruction order input params by @BenWibking in https://github.com/quokka-astro/quokka/pull/80 * fix cmake python support by @BenWibking in https://github.com/quokka-astro/quokka/pull/82 * add use_dual_energy parameter by @BenWibking in https://github.com/quokka-astro/quokka/pull/81 * run CI on pull requests by @BenWibking in https://github.com/quokka-astro/quokka/pull/84 * Disable Sonarcloud analysis on external PRs by @BenWibking in https://github.com/quokka-astro/quokka/pull/85 * initialise auxiliary gas internal energy in test problems by @AstroKriel in https://github.com/quokka-astro/quokka/pull/83 * move sonarcloud analysis to separate CI action by @BenWibking in https://github.com/quokka-astro/quokka/pull/89 * add Physics_Traits compile-time options by @AstroKriel in https://github.com/quokka-astro/quokka/pull/88 * specify max_timesteps at runtime for HydroBlast3d by @BenWibking in https://github.com/quokka-astro/quokka/pull/90 * add AMREX_GPUS_PER_NODE to Gadi host config by @BenWibking in https://github.com/quokka-astro/quokka/pull/91 * add Strang-split sources to hydro update by @BenWibking in https://github.com/quokka-astro/quokka/pull/94 * Update PR guidelines by @BenWibking in https://github.com/quokka-astro/quokka/pull/97 * Added include guards for the physics-trait header files by @AstroKriel in https://github.com/quokka-astro/quokka/pull/99 * Fix periodicity bug in the rad-hydro-shell simulation by @AstroKriel in https://github.com/quokka-astro/quokka/pull/98 * compute internalEnergy P dV with face-centered velocities by @BenWibking in https://github.com/quokka-astro/quokka/pull/95 * reconstruct SIE for internal energy variable by @BenWibking in https://github.com/quokka-astro/quokka/pull/100 * Fix P -> Pgas in Hydro_System assert by @BenWibking in https://github.com/quokka-astro/quokka/pull/103 * add CI debug build on arm64 by @BenWibking in https://github.com/quokka-astro/quokka/pull/105 * Fix bug in P dV term in dual energy update by @BenWibking in https://github.com/quokka-astro/quokka/pull/107 * Refactor simulation initialisation by @AstroKriel in https://github.com/quokka-astro/quokka/pull/106 * Remove dimension dependent (3D) import of ArrayView by @AstroKriel in https://github.com/quokka-astro/quokka/pull/108 * add Rayleigh-Taylor test problems by @BenWibking in https://github.com/quokka-astro/quokka/pull/110 * add image of RT3D simulation to README.md by @BenWibking in https://github.com/quokka-astro/quokka/pull/111 * fix shock-cloud initialization by @BenWibking in https://github.com/quokka-astro/quokka/pull/114 * use internal energy for AMR interpolation by @BenWibking in https://github.com/quokka-astro/quokka/pull/113 * compute 1D averages of user-specified quantities by @BenWibking in https://github.com/quokka-astro/quokka/pull/115 * added CMake config for NCSA Delta by @BenWibking in https://github.com/quokka-astro/quokka/pull/116 * Update NCSA Delta config by @BenWibking in https://github.com/quokka-astro/quokka/pull/119 * use MultiFab ParallelFor for RT2D/3D problems by @BenWibking in https://github.com/quokka-astro/quokka/pull/120 * enable gpu-aware MPI by default by @BenWibking in https://github.com/quokka-astro/quokka/pull/121 * update MI100 build settings by @BenWibking in https://github.com/quokka-astro/quokka/pull/122 * update amrex submodule by @BenWibking in https://github.com/quokka-astro/quokka/pull/123 * Rename variables to indicate they store cell-centred quantities by @AstroKriel in https://github.com/quokka-astro/quokka/pull/126 * add CMake settings for Crusher (OLCF) by @BenWibking in https://github.com/quokka-astro/quokka/pull/127 * disable pltfile output for shocktube test by @BenWibking in https://github.com/quokka-astro/quokka/pull/128 * add benchmark parameter files for Crusher by @BenWibking in https://github.com/quokka-astro/quokka/pull/130 * apply density floor after regrid by @BenWibking in https://github.com/quokka-astro/quokka/pull/132 * avoid filling old_state when regridding by @BenWibking in https://github.com/quokka-astro/quokka/pull/131 * allow limiting timesteps based on extra physics by @BenWibking in https://github.com/quokka-astro/quokka/pull/134 * fix undefined behavior in AddInternalEnergyPdV by @BenWibking in https://github.com/quokka-astro/quokka/pull/136 * suppress gcc warnings about ARM ABI change by @BenWibking in https://github.com/quokka-astro/quokka/pull/137 * fix undefined behavior in ComputeRhsFromFluxes by @BenWibking in https://github.com/quokka-astro/quokka/pull/138 * fix memory errors in setInitialConditionsOnGrid by @BenWibking in https://github.com/quokka-astro/quokka/pull/139 * run CI with ENABLE_ASAN=ON by @BenWibking in https://github.com/quokka-astro/quokka/pull/141 * fix memory issue in ShockCloud initial conditions by @BenWibking in https://github.com/quokka-astro/quokka/pull/140 * update GitHub actions by @BenWibking in https://github.com/quokka-astro/quokka/pull/142 * Update input argument to user initialisation function by @AstroKriel in https://github.com/quokka-astro/quokka/pull/129 * remove dt assert in ODEIntegrate by @BenWibking in https://github.com/quokka-astro/quokka/pull/143 * decide whether to subcycle based on cost by @BenWibking in https://github.com/quokka-astro/quokka/pull/145 * use MultiFab ParallelFor for hydro by @BenWibking in https://github.com/quokka-astro/quokka/pull/135 * Rename grid member variables by @AstroKriel in https://github.com/quokka-astro/quokka/pull/147 * Rename BCs-variable to indicate centering by @AstroKriel in https://github.com/quokka-astro/quokka/pull/146 * add ability to retry hydro advance with smaller dt by @BenWibking in https://github.com/quokka-astro/quokka/pull/148 * use FillPatcher class for ghost cell filling when using AMR by @BenWibking in https://github.com/quokka-astro/quokka/pull/133 * retry hydro step on post-hoc CFL violation by @BenWibking in https://github.com/quokka-astro/quokka/pull/149 * fix reflux when timestep retries are used by @BenWibking in https://github.com/quokka-astro/quokka/pull/150 * Fix bug in additional subcycling by @BenWibking in https://github.com/quokka-astro/quokka/pull/151 * disable additional subcycling code by @BenWibking in https://github.com/quokka-astro/quokka/pull/154 * add refinement to passive scalar test by @BenWibking in https://github.com/quokka-astro/quokka/pull/155 * use CellConservativeProtected in 2D and 3D by @BenWibking in https://github.com/quokka-astro/quokka/pull/156 * use lincc_interp AMR interpolation method by default by @BenWibking in https://github.com/quokka-astro/quokka/pull/157 * update settings for Crusher (OLCF) by @BenWibking in https://github.com/quokka-astro/quokka/pull/159 * update amrex submodule by @BenWibking in https://github.com/quokka-astro/quokka/pull/161 * use custom AMR interpolation method by @BenWibking in https://github.com/quokka-astro/quokka/pull/163 * fix bug in first-order flux correction by @BenWibking in https://github.com/quokka-astro/quokka/pull/164 * use GPU reduction for checkHydroStates by @BenWibking in https://github.com/quokka-astro/quokka/pull/166 * require CUDA 11.7+ by @BenWibking in https://github.com/quokka-astro/quokka/pull/168 * update .clang-format by @BenWibking in https://github.com/quokka-astro/quokka/pull/169 * run clang-tidy on PRs by @BenWibking in https://github.com/quokka-astro/quokka/pull/170 * use .clang-tidy file with clang-tidy-review by @BenWibking in https://github.com/quokka-astro/quokka/pull/171 * have clang-tidy read compile_commands.json by @BenWibking in https://github.com/quokka-astro/quokka/pull/172 * fix clang-tidy-review GitHub action by @BenWibking in https://github.com/quokka-astro/quokka/pull/173 * update .clang-tidy config file by @BenWibking in https://github.com/quokka-astro/quokka/pull/174 * ignore clang-tidy array index warning by @BenWibking in https://github.com/quokka-astro/quokka/pull/175 * Update README.md with CUDA version requirement by @BenWibking in https://github.com/quokka-astro/quokka/pull/178 * Add + turn off MHD flag (MHD is not implemented yet) by @AstroKriel in https://github.com/quokka-astro/quokka/pull/177 * use SimulationData for problem-specific data by @BenWibking in https://github.com/quokka-astro/quokka/pull/180 * use the amrex version of the new interpolater by @BenWibking in https://github.com/quokka-astro/quokka/pull/181 * reduce memory usage in hydro retries by @BenWibking in https://github.com/quokka-astro/quokka/pull/182 * use adaptive wavespeed estimates for Riemann solver by @BenWibking in https://github.com/quokka-astro/quokka/pull/183 * fix cooling failure at high densities by @BenWibking in https://github.com/quokka-astro/quokka/pull/184 * refactor hydro riemann solver by @BenWibking in https://github.com/quokka-astro/quokka/pull/185 * self-gravity for non-subcycling-in-time AMR by @BenWibking in https://github.com/quokka-astro/quokka/pull/167 * remove unused MultiFabs in RemakeLevel by @BenWibking in https://github.com/quokka-astro/quokka/pull/187 * update build instructions in README by @BenWibking in https://github.com/quokka-astro/quokka/pull/188 * Add ability to create and work with face-centred quantities by @AstroKriel in https://github.com/quokka-astro/quokka/pull/125 * Add more notes about GPU-aware MPI to README by @BenWibking in https://github.com/quokka-astro/quokka/pull/189 * refactor hydro Riemann solver in canonical form by @BenWibking in https://github.com/quokka-astro/quokka/pull/190 * enforce code formatting by @BenWibking in https://github.com/quokka-astro/quokka/pull/191 * Read cc and fc ncomp from Physics_Indices by @AstroKriel in https://github.com/quokka-astro/quokka/pull/197 * create EOS and EOS_Traits classes by @BenWibking in https://github.com/quokka-astro/quokka/pull/196 * Add HLLD solver for ideal MHD by @AstroKriel in https://github.com/quokka-astro/quokka/pull/195 * fix build error with CUDA 12 by @BenWibking in https://github.com/quokka-astro/quokka/pull/200 * Enforcing upper/lower limits to density, temperature and speed. by @aditivijayan in https://github.com/quokka-astro/quokka/pull/192 * disable readability-function-cognitive-complexity warning by @BenWibking in https://github.com/quokka-astro/quokka/pull/201 * avoid clang-tidy-review post on merged PRs by @BenWibking in https://github.com/quokka-astro/quokka/pull/208 * create GitHub Action for docs by @BenWibking in https://github.com/quokka-astro/quokka/pull/205 * Changed box coordinates for the SphericalCollapse test problem by @psharda in https://github.com/quokka-astro/quokka/pull/206 * add flowchart to docs by @BenWibking in https://github.com/quokka-astro/quokka/pull/203 * fix publish docs action by @BenWibking in https://github.com/quokka-astro/quokka/pull/211 * avoid using inf for limits by @BenWibking in https://github.com/quokka-astro/quokka/pull/210 * fix branch name in docs.yml by @BenWibking in https://github.com/quokka-astro/quokka/pull/212 * update amrex submodule by @BenWibking in https://github.com/quokka-astro/quokka/pull/213 * Increased pressure for spherical collapse gravity test by @psharda in https://github.com/quokka-astro/quokka/pull/215 * update SphericalCollapse parameters by @BenWibking in https://github.com/quokka-astro/quokka/pull/219 * use Roe-average wavespeeds for HLLC by @BenWibking in https://github.com/quokka-astro/quokka/pull/217 * allow simulation to continue if retries exceed max by @BenWibking in https://github.com/quokka-astro/quokka/pull/209 * Timed output by @aditivijayan in https://github.com/quokka-astro/quokka/pull/227 * workaround constexpr error on Clang-based compilers by @BenWibking in https://github.com/quokka-astro/quokka/pull/222 * fix AppleClang build by @BenWibking in https://github.com/quokka-astro/quokka/pull/229 * add multidimensional artificial viscosity by @BenWibking in https://github.com/quokka-astro/quokka/pull/228 * update SLURM script for Crusher by @BenWibking in https://github.com/quokka-astro/quokka/pull/226 * enable cooling with a runtime parameter by @BenWibking in https://github.com/quokka-astro/quokka/pull/225 * adjust multigrid parameters for gravity solve by @BenWibking in https://github.com/quokka-astro/quokka/pull/223 * update amrex to fix macOS build by @BenWibking in https://github.com/quokka-astro/quokka/pull/232 * add GitHub CI for macOS by @BenWibking in https://github.com/quokka-astro/quokka/pull/233 * update amrex submodule by @BenWibking in https://github.com/quokka-astro/quokka/pull/234 * Fix typos in the HLLD implementation by @AstroKriel in https://github.com/quokka-astro/quokka/pull/236 * update Delta (NCSA) config by @BenWibking in https://github.com/quokka-astro/quokka/pull/235 * added Microphysics as a submodule for Quokka by @psharda in https://github.com/quokka-astro/quokka/pull/216 * Updating cmakelists in quokka to include microphysics by @psharda in https://github.com/quokka-astro/quokka/pull/240 * Add ability to specify which quantities to PPM reconstruct by @AstroKriel in https://github.com/quokka-astro/quokka/pull/244 * update amrex submodule by @BenWibking in https://github.com/quokka-astro/quokka/pull/246 * avoid deprecated Python API call by @BenWibking in https://github.com/quokka-astro/quokka/pull/247 * Disable parallel builds in CI by @BenWibking in https://github.com/quokka-astro/quokka/pull/248 * increase azure-pipelines CI time limit by @BenWibking in https://github.com/quokka-astro/quokka/pull/249 * remove CodeQL CI by @BenWibking in https://github.com/quokka-astro/quokka/pull/250 * Create dependabot.yml by @BenWibking in https://github.com/quokka-astro/quokka/pull/254 * fix clang-tidy-review from forks by @BenWibking in https://github.com/quokka-astro/quokka/pull/255 * Update sonarcloud.yml by @BenWibking in https://github.com/quokka-astro/quokka/pull/264 * Use macOS 13 on GitHub Actions by @BenWibking in https://github.com/quokka-astro/quokka/pull/266 * cancel in-progress CI builds on new push by @BenWibking in https://github.com/quokka-astro/quokka/pull/268 * Patched microphysics to quokka, and added primordial chem test by @psharda in https://github.com/quokka-astro/quokka/pull/263 * check spelling in source code by @BenWibking in https://github.com/quokka-astro/quokka/pull/277 * Added mass scalars and consistent multi-fluid advection (CMA) by @psharda in https://github.com/quokka-astro/quokka/pull/273 * added Setonix (GPU) build scripts by @BenWibking in https://github.com/quokka-astro/quokka/pull/282 * update Setonix SLURM script by @BenWibking in https://github.com/quokka-astro/quokka/pull/284 * Remove ReadTheDocs badge from README by @BenWibking in https://github.com/quokka-astro/quokka/pull/288 * optimise load by @aditivijayan in https://github.com/quokka-astro/quokka/pull/287 * treat all compiler warnings as errors by @BenWibking in https://github.com/quokka-astro/quokka/pull/283 * simplify Setonix SLURM scripts by @BenWibking in https://github.com/quokka-astro/quokka/pull/289 * create new GitHub action for compiler warnings by @BenWibking in https://github.com/quokka-astro/quokka/pull/293 * Add massScalars as an optional argument to EOS routines by @psharda in https://github.com/quokka-astro/quokka/pull/291 * Using CMake object library to compile files needed by all tests by @psharda in https://github.com/quokka-astro/quokka/pull/295 * Compute massScalars and use them in EOS routines by @psharda in https://github.com/quokka-astro/quokka/pull/296 * include massScalars in call to EOS functions in hydro and radiation by @psharda in https://github.com/quokka-astro/quokka/pull/298 * Ensure EOS.hpp compiles on AMD GPUs by @psharda in https://github.com/quokka-astro/quokka/pull/310 * use two cores to run arm64 debug pipeline by @psharda in https://github.com/quokka-astro/quokka/pull/317 * update Setonix CMake settings by @BenWibking in https://github.com/quokka-astro/quokka/pull/321 * Update dependencies_hip.sh to use ROCm 5.4.3 by @BenWibking in https://github.com/quokka-astro/quokka/pull/318 * Two EOS compilation for Quokka + fix build on cray systems by @psharda in https://github.com/quokka-astro/quokka/pull/311 * updated job scripts for Setonix by @BenWibking in https://github.com/quokka-astro/quokka/pull/331 * Use microphysics EOS in Quokka's EOS.hpp for all quokka tests + use amu instead of hydrogen mass throughout Quokka by @psharda in https://github.com/quokka-astro/quokka/pull/324 * Compute pressure from microphysics eos by @psharda in https://github.com/quokka-astro/quokka/pull/335 * Implement general EOS equations in Riemann Solver by @psharda in https://github.com/quokka-astro/quokka/pull/338 * Starcluster example problem by @psharda in https://github.com/quokka-astro/quokka/pull/342 * Update microphysics by @psharda in https://github.com/quokka-astro/quokka/pull/351 * add Navier-Stokes Characteristic Boundary Conditions by @BenWibking in https://github.com/quokka-astro/quokka/pull/352 * add yaml-cpp as a submodule by @BenWibking in https://github.com/quokka-astro/quokka/pull/360 * workaround Ascent issue by @BenWibking in https://github.com/quokka-astro/quokka/pull/365 * fill ghost cells before output by @BenWibking in https://github.com/quokka-astro/quokka/pull/363 * add history file output by @BenWibking in https://github.com/quokka-astro/quokka/pull/366 * Remove is_chemistry_enabled by @psharda in https://github.com/quokka-astro/quokka/pull/369 * add axis-aligned projection outputs by @BenWibking in https://github.com/quokka-astro/quokka/pull/367 * add YAML metadata I/O by @BenWibking in https://github.com/quokka-astro/quokka/pull/364 * update setonix configuration by @BenWibking in https://github.com/quokka-astro/quokka/pull/362 * Bump actions/checkout from 3 to 4 by @dependabot in https://github.com/quokka-astro/quokka/pull/370 * revert to first-order space+time flux when RK2 flux fails by @BenWibking in https://github.com/quokka-astro/quokka/pull/221 * ensure first-order flux correction is consistent at box boundaries by @BenWibking in https://github.com/quokka-astro/quokka/pull/376 * add LLF fallback solver by @BenWibking in https://github.com/quokka-astro/quokka/pull/380 * Enforce checks and limits on mass scalars by @psharda in https://github.com/quokka-astro/quokka/pull/378 * output multifab to disk if hydro update fails by @BenWibking in https://github.com/quokka-astro/quokka/pull/385 * update amrex by @BenWibking in https://github.com/quokka-astro/quokka/pull/387 * use minmod limiting for PLM by @BenWibking in https://github.com/quokka-astro/quokka/pull/384 * Print coordinates of cells where flux correction is needed by @psharda in https://github.com/quokka-astro/quokka/pull/383 * update the flowchart on the website by @chongchonghe in https://github.com/quokka-astro/quokka/pull/392 * Valarray extended by @chongchonghe in https://github.com/quokka-astro/quokka/pull/391 * Update README by @psharda in https://github.com/quokka-astro/quokka/pull/398 * Add sample Setonix scripts by @psharda in https://github.com/quokka-astro/quokka/pull/399 * Fix indentations by @psharda in https://github.com/quokka-astro/quokka/pull/407 * Create issue templates by @BenWibking in https://github.com/quokka-astro/quokka/pull/414 * Fix typos found by codespell by @BenWibking in https://github.com/quokka-astro/quokka/pull/416 * Update GPU CI timeout by @BenWibking in https://github.com/quokka-astro/quokka/pull/417 * Multigroup radiation transport implementation by @chongchonghe in https://github.com/quokka-astro/quokka/pull/388 * Renormalize mass scalars post enforcing floor by @psharda in https://github.com/quokka-astro/quokka/pull/405 * workaround macOS GitHub actions bug by @BenWibking in https://github.com/quokka-astro/quokka/pull/425 * fix out-of-bounds bug in NSCBC outflow by @BenWibking in https://github.com/quokka-astro/quokka/pull/430 * add Summit (OLCF) config by @BenWibking in https://github.com/quokka-astro/quokka/pull/435 * fix src/CMakeLists for macOS with Clang by @chongchonghe in https://github.com/quokka-astro/quokka/pull/395 * add CI pipeline for AMDGPU by @BenWibking in https://github.com/quokka-astro/quokka/pull/442 * Add build configuration for Moth by @BenWibking in https://github.com/quokka-astro/quokka/pull/440 * Fix GPU CI config by @BenWibking in https://github.com/quokka-astro/quokka/pull/443 * add build profile for AMDGPU ASAN by @BenWibking in https://github.com/quokka-astro/quokka/pull/446 * fix odd-even decoupling in radiation diffusion limit by @BenWibking in https://github.com/quokka-astro/quokka/pull/453 * Extend HydroState to include MHD-vars for HLLD solver by @AstroKriel in https://github.com/quokka-astro/quokka/pull/420 * Fix the convergence problem of the Newton-Raphson by @chongchonghe in https://github.com/quokka-astro/quokka/pull/454 * adding parameters.rst to docs by @aditivijayan in https://github.com/quokka-astro/quokka/pull/432 * Add pull_request_template.md by @BenWibking in https://github.com/quokka-astro/quokka/pull/452 * move analysis pages from GitHub wiki to Sphinx docs by @BenWibking in https://github.com/quokka-astro/quokka/pull/459 * move cluster-specific instructions from wiki to Sphinx docs by @BenWibking in https://github.com/quokka-astro/quokka/pull/461 * Use IMEX PD-ARS scheme for radiation update by @chongchonghe in https://github.com/quokka-astro/quokka/pull/448 * add chapter headings and developer guide to Sphinx docs by @BenWibking in https://github.com/quokka-astro/quokka/pull/465 * move numerical stability page from wiki to Sphinx docs by @BenWibking in https://github.com/quokka-astro/quokka/pull/460 * add support for writing openPMD/ADIOS2 plotfiles by @BenWibking in https://github.com/quokka-astro/quokka/pull/466 * Fallback to zero-gradient extrapolation when NSCBC fails by @BenWibking in https://github.com/quokka-astro/quokka/pull/472 * use frexp and ldexp in FastMath by @BenWibking in https://github.com/quokka-astro/quokka/pull/471 * update moth profile for ROCm 6.0 by @BenWibking in https://github.com/quokka-astro/quokka/pull/475 * add additional metadata to openPMD outputs by @BenWibking in https://github.com/quokka-astro/quokka/pull/473 * radiation advection by @chongchonghe in https://github.com/quokka-astro/quokka/pull/462 * Multigroup radiative shock test by @chongchonghe in https://github.com/quokka-astro/quokka/pull/467 * add tests to sphinx docs by @chongchonghe in https://github.com/quokka-astro/quokka/pull/483 * Define advecting pulse test problem. by @chongchonghe in https://github.com/quokka-astro/quokka/pull/463 * document hydro, rad, and cooling runtime parameters by @BenWibking in https://github.com/quokka-astro/quokka/pull/488 * fix macOS CI by @BenWibking in https://github.com/quokka-astro/quokka/pull/496 * Use correct units for mean molecular weight by @psharda in https://github.com/quokka-astro/quokka/pull/494 * Save gravitational potential gpot as a derived var in pltfiles by @psharda in https://github.com/quokka-astro/quokka/pull/406 * add tracer particles by @BenWibking in https://github.com/quokka-astro/quokka/pull/490 * build GitHub actions in parallel by @BenWibking in https://github.com/quokka-astro/quokka/pull/501 * add CIC particles by @BenWibking in https://github.com/quokka-astro/quokka/pull/502 * Make ComputeRadPressure return F and S by @chongchonghe in https://github.com/quokka-astro/quokka/pull/512 * update macOS CI to use M1 runner by @BenWibking in https://github.com/quokka-astro/quokka/pull/513 * add HWASAN CI run by @BenWibking in https://github.com/quokka-astro/quokka/pull/510 * re-enable CodeQL by @BenWibking in https://github.com/quokka-astro/quokka/pull/514 * Multigroup advecting pulse test by @chongchonghe in https://github.com/quokka-astro/quokka/pull/486 * Fix RadShadow test problem by @BenWibking in https://github.com/quokka-astro/quokka/pull/476 * change projection plotfile names by @BenWibking in https://github.com/quokka-astro/quokka/pull/523 * PopIII Simulation by @psharda in https://github.com/quokka-astro/quokka/pull/368 * Fix bug in perturbation.py by @psharda in https://github.com/quokka-astro/quokka/pull/525 * fix copies to rank zero for correctness tests by @BenWibking in https://github.com/quokka-astro/quokka/pull/531 * fix clang-tidy warnings by @BenWibking in https://github.com/quokka-astro/quokka/pull/468 * Newton iteration on new basis (Egas, R / tau0) by @chongchonghe in https://github.com/quokka-astro/quokka/pull/535 * Define the grey-radiation advecting pulse test by @chongchonghe in https://github.com/quokka-astro/quokka/pull/538 * fix final checkpoint file write by @BenWibking in https://github.com/quokka-astro/quokka/pull/558 * Defined advecting pulse test in dynamic diffusion regime by @chongchonghe in https://github.com/quokka-astro/quokka/pull/551 * compile warnings with AMREX_SPACEDIM=3 by @BenWibking in https://github.com/quokka-astro/quokka/pull/564 * Fix clang-tidy-review comment posting by @BenWibking in https://github.com/quokka-astro/quokka/pull/567 * run CodeQL analysis with AMREX_SPACEDIM=3 by @BenWibking in https://github.com/quokka-astro/quokka/pull/568 * output 2D slice plotfiles by @BenWibking in https://github.com/quokka-astro/quokka/pull/562 * Update Factory.H to use std::move by @BenWibking in https://github.com/quokka-astro/quokka/pull/576 * Define K_S for isothermal gamma by @psharda in https://github.com/quokka-astro/quokka/pull/573 * Avoid imaginary roe average sound speed by @psharda in https://github.com/quokka-astro/quokka/pull/572 * Fixed bug in PopIII refinement by @psharda in https://github.com/quokka-astro/quokka/pull/574 * New source terms that include the work term by @chongchonghe in https://github.com/quokka-astro/quokka/pull/552 * Fix amrex::abort not aborting unconditionally on GPUs (for primordial chem and popiii problems) by @psharda in https://github.com/quokka-astro/quokka/pull/575 * Remove redundant parameter compute_v_over_c_terms by @chongchonghe in https://github.com/quokka-astro/quokka/pull/579 * fix face-centered BCs for refined levels by @BenWibking in https://github.com/quokka-astro/quokka/pull/584 * add histogram (PDF) output by @BenWibking in https://github.com/quokka-astro/quokka/pull/581 * update histogram plotting script by @BenWibking in https://github.com/quokka-astro/quokka/pull/588 * docs: add in-situ analysis by @BenWibking in https://github.com/quokka-astro/quokka/pull/586 * add simple subsonic inflow/outflow BCs by @BenWibking in https://github.com/quokka-astro/quokka/pull/598 * fix tracer particle handling in hydro retries by @BenWibking in https://github.com/quokka-astro/quokka/pull/596 * add computeVolumeIntegral function by @BenWibking in https://github.com/quokka-astro/quokka/pull/597 * Remove wavespeed correction in radiation flux by @chongchonghe in https://github.com/quokka-astro/quokka/pull/582 * Update test parameters to produce all the figures in the IMEX paper by @chongchonghe in https://github.com/quokka-astro/quokka/pull/600 * Refactor Reconstruction Functions by @AstroKriel in https://github.com/quokka-astro/quokka/pull/570 * add "experimental" warning for AMD and Intel GPUs by @BenWibking in https://github.com/quokka-astro/quokka/pull/602 * Fix Newton-Rasphon convergence bug when tau = 0 by @chongchonghe in https://github.com/quokka-astro/quokka/pull/603 * read cloudy-cooling-tools tables by @BenWibking in https://github.com/quokka-astro/quokka/pull/599 * Move installation instructions to docs by @chongchonghe in https://github.com/quokka-astro/quokka/pull/607 * fix typo in TabulatedCooling by @BenWibking in https://github.com/quokka-astro/quokka/pull/606 ## New Contributors * @conradtchan made their first contribution in https://github.com/quokka-astro/quokka/pull/35 * @AstroKriel made their first contribution in https://github.com/quokka-astro/quokka/pull/83 * @aditivijayan made their first contribution in https://github.com/quokka-astro/quokka/pull/192 * @psharda made their first contribution in https://github.com/quokka-astro/quokka/pull/206 * @chongchonghe made their first contribution in https://github.com/quokka-astro/quokka/pull/392 **Full Changelog**: https://github.com/quokka-astro/quokka/compare/21.10...24.04