Implement photoionization and add tests#1719
Conversation
|
Check out this pull request on See visual diffs & provide feedback on Jupyter Notebooks. Powered by ReviewNB |
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request implements photoionization in Quokka, updates the Microphysics hash, and adds one-zone and Stromgren sphere test problems. The changes introduce a new photochemistry module, enhancing Quokka's ability to simulate astrophysical phenomena involving radiation and matter interactions. The included tests help ensure the correctness and stability of the new features. Highlights
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request implements photochemistry and adds corresponding tests. The changes include modifications to the main simulation loop and EOS to support a new PHOTOCHEMISTRY flag, and adds new networks for photoionization. The implementation of the photochemistry step as an operator-split source term seems correct. My main feedback is regarding code duplication in the new network definitions, which could be refactored for better maintainability. I've also pointed out several places with commented-out code that should be cleaned up before merging.
Note: Security Review did not run due to the size of the PR.
cb1ce31 to
a04ee2e
Compare
|
/gemini review |
There was a problem hiding this comment.
Code Review
This pull request implements a major update to the project's development infrastructure, including a new quokka CLI tool, a complete migration of input files to TOML format, and extensive documentation updates. Feedback points out syntax errors in several new TOML files regarding array formatting and missing required parameters. Furthermore, portability issues were identified in the regression scripts due to hardcoded absolute paths and local directory references.
|
Ok, something went wrong with a merge into this branch. Essentially the last several weeks of PRs have somehow been included here as new commits. |
… and fix radiation deposition
for more information, see https://pre-commit.ci
…try and minor fixes
for more information, see https://pre-commit.ci
…nd add reference solution
for more information, see https://pre-commit.ci
|
@claude review |
|
Claude encountered an error —— View job Code Review in Progress
|
chongchonghe
left a comment
There was a problem hiding this comment.
I have finished a review of this PR. It generally looks really good, and I think it will be ready to merge once you addressed all the comments and after Mark and/or Ben review.
I left many comments, and all are all easy and quick fixes. One format change is required: since we don't do subfolders in the inputs/ folder, to make it consistent with the rest of the code, can you move the toml files in inputs/PhotoionizationTests to inputs/ ? Then, you should be able to use the scripts/bash/quokka script to do quick build and run, because the quokka script assumes a unified file structure. Also need to rewrite the .toml file into TOML format, as gemini pointed out.
|
auggie review |
|
This pull request is abnormally large and would use a significant amount of tokens to review. If you still wish to review it, comment "augment review" and we will review it. |
|
augment review |
🤖 Augment PR SummarySummary: This PR implements photochemistry (photoionization) in Quokka by adding a new photochemistry module, a photoionization reaction network, and associated test problems (one-zone streaming and Strömgren sphere). Changes:
Technical Notes: The photochemistry uses an operator-split approach applied after the radiation update. The Jacobian is provided analytically for efficient VODE integration. Various physics switches (recombination, collisional ionization, heating/cooling) are exposed as runtime parameters. Test validation compares against Julia ODE solutions and analytical Strömgren sphere evolution. 🤖 Was this summary useful? React with 👍 or 👎 |
90abd39 to
531c9bc
Compare
for more information, see https://pre-commit.ci

Description
Implements photochemistry in quokka and changes the Microphysics hash to a compatible version. Also adds the one zone test and the stromgren sphere test problem
Related issues
None
Checklist
Before this pull request can be reviewed, all of these tasks should be completed. Denote completed tasks with an
xinside the square brackets[ ]in the Markdown source below:/azp run.