microphysics
common astrophysical microphysics routines with interfaces for the different AMReX codes
Science Score: 36.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.4%) to scientific vocabulary
Keywords
Repository
common astrophysical microphysics routines with interfaces for the different AMReX codes
Basic Info
- Host: GitHub
- Owner: AMReX-Astro
- License: other
- Language: C++
- Default Branch: main
- Homepage: https://amrex-astro.github.io/Microphysics
- Size: 131 MB
Statistics
- Stars: 37
- Watchers: 8
- Forks: 38
- Open Issues: 66
- Releases: 77
Topics
Metadata Files
README.md
Microphysics
A collection of astrophysical microphysics routines for stellar evolution and explosions and interstellar medium chemistry (including primordial chemistry)
There are several core types of microphysics routines hosted here:
conductivity/: stellar conductivities needed for modeling thermal diffusion processes.constants/: fundamental physical constants.EOS/: these are the equations of state. All of them accept a struct calledeos_tto pass the thermodynamic state information in and out, though in C++ they are templated such that they can accept other objects with members of the same name.integration/: this holds the various ODE integrators. VODE is the primary integrator for production use, but other integrators are provided for experimentation.interfaces/: this holds the structs used to interface with the EOS and networks.networks/: these are the reaction networks. They serve both to define the composition and its properties, as well as describe the reactions and energy release when reactions occur.
For ISM chemistry, network contains the differentials of the number density of various chemical species and the gas specific internal energy.
neutrinos/: this holds the plasma neutrino cooling routines used in the reaction networks.nse_solver/: a solver for nuclear statistical equilibrium that finds the equilibrium state for the nuclei represented by the network.nse_tabular/: a tabulation of the NSE state from a large network that can be used together with theaprox19network.opacity/: radiative opacities used for radiation solvers.rates/: this contains some common rate routines used by the variousaproxnetworks, and could be expanded to contain other collections of rates in the futurescreening/: the screening routines for nuclear reactions. These are called by the various networksunit_test/: a collection of unit tests that exercise the different pieces of Microphysicsutil: linear algebra routines for the integrators (specifically a linear system solver from LINPACK), the hybrid Powell solver, other math routines, and build scripts
[!TIP] New networks for Microphysics can easily be generated using pynucastro via the
AmrexAstroCxxNetwork
AMReX-Astro Codes
At the moment, these routines are written to be compatible with the AMReX-Astro codes, MAESTROeX, Castro and Quokka.
Castro: http://amrex-astro.github.io/Castro/
MAESTROeX: http://amrex-astro.github.io/MAESTROeX/
Quokka: https://quokka-astro.github.io/quokka/
[!IMPORTANT] To use this repository with AMReX codes, set
MICROPHYSICS_HOMEto point to theMicrophysics/directory.
There are various unit tests that work with the AMReX build system to test these routines.
Other Simulation Codes
The interfaces are fairly general, so they can be expanded to other codes. This will require adding any necessary make stubs for the code's build system as well as writing unit tests for that build system to ensure the interfaces are tested.
Documentation
A user's guide for Microphysics is available at: http://amrex-astro.github.io/Microphysics/docs/
The Sphinx source for the documentation is in Microphysics/Docs/
Development Model:
Development generally follows the following ideas:
New features are committed to the
developmentbranch.GitHub actions will run automatically to test the different physics solvers. Additionally, nightly regression tests will run to ensure that we work with the latest version of AMReX and that more extensive simulations don't change answers.
If a change is critical, we can cherry-pick the commit from
developmenttomain.Contributions are welcomed from anyone. All contributions should be done via pull requests. A pull request should be generated from your fork of
Microphysicsand target thedevelopmentbranch. (If you mistakenly targetmain, we can change it for you.)Please add a line to
CHANGESsummarizing your change if it is a bug fix or new feature. Reference the PR or issue as appropriate. Additionally, if your change fixes a bug (or if you find a bug but do not fix it), and there is no current issue describing the bug, please file a separate issue describing the bug, regardless of how significant the bug is. If possible, in both theCHANGESfile and the issue, please cite the pull request numbers or git commit hashes where the problem was introduced and fixed, respectively.All pull requests will be squashed into a single commit when merged.
On the first workday of each month, we perform a merge of
developmentintomain, in coordination withAMReX,Castro, andMAESTROeX. For this merge to take place, we need to be passing the GitHub CI tests and comprehensive regression tests.To accommodate this need, we close the merge window into
developmenta few days before the merge day. While the merge window is closed, only bug fixes should be pushed intodevelopment. Once the merge fromdevelopment->mainis done, the merge window reopens.
Core Developers
People who make a number of substantive contributions will be named "core developers" of Microphysics. The criteria for becoming a core developer are flexible, but generally involve one of the following:
10 non-merge commits to
Microphysics/(includingDocs/)addition of a new algorithm / module or
substantial input into the code design process or testing
Core developers will be recognized in the following ways:
invited to the group's slack team
added to the
.zenodo.jsonfile that is used to create DOIs corresponding to monthly releases.invited to co-author general code papers / proceedings describing Microphysics, its performance, etc. (Note: science papers will always be left to the science leads to determine authorship).
[!NOTE] If a core developer is inactive for 3 years, we may reassess their status as a core developer.
Getting help
We use GitHub discussions for requesting help and interacting with the community:
https://github.com/amrex-astro/Microphysics/discussions
Owner
- Name: AMReX-Astro
- Login: AMReX-Astro
- Kind: organization
- Repositories: 16
- Profile: https://github.com/AMReX-Astro
The AMReX Astrophysics Suite: adaptive mesh refinement hydrodynamics codes for astrophysical flows.
GitHub Events
Total
- Create event: 19
- Release event: 6
- Issues event: 33
- Watch event: 2
- Delete event: 5
- Issue comment event: 175
- Push event: 238
- Pull request review comment event: 90
- Pull request review event: 181
- Pull request event: 261
- Fork event: 4
Last Year
- Create event: 19
- Release event: 6
- Issues event: 33
- Watch event: 2
- Delete event: 5
- Issue comment event: 175
- Push event: 238
- Pull request review comment event: 90
- Pull request review event: 181
- Pull request event: 261
- Fork event: 4
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 19
- Total pull requests: 129
- Average time to close issues: 12 months
- Average time to close pull requests: 18 days
- Total issue authors: 4
- Total pull request authors: 11
- Average comments per issue: 1.74
- Average comments per pull request: 0.47
- Merged pull requests: 94
- Bot issues: 0
- Bot pull requests: 2
Past Year
- Issues: 17
- Pull requests: 128
- Average time to close issues: 2 months
- Average time to close pull requests: 9 days
- Issue authors: 2
- Pull request authors: 11
- Average comments per issue: 1.76
- Average comments per pull request: 0.46
- Merged pull requests: 94
- Bot issues: 0
- Bot pull requests: 2
Top Authors
Issue Authors
- zingale (47)
- BenWibking (7)
- yut23 (4)
- chongchonghe (4)
- maximumcats (1)
- rporcu (1)
- psharda (1)
- brady-ryan (1)
Pull Request Authors
- zingale (249)
- zhichen3 (30)
- yut23 (29)
- psharda (15)
- khanakbhargava (7)
- dependabot[bot] (7)
- maxpkatz (4)
- BenWibking (3)
- brady-ryan (2)
- aisclark91 (2)
- simonguichandut (1)
- SamG-01 (1)
- chongchonghe (1)
- dwillcox (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v3 composite
- actions/checkout v3 composite
- actions/checkout v2 composite
- actions/checkout v2 composite
- actions/create-release v1 composite
- actions/checkout v3 composite
- actions/cache v3 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- actions/checkout v3 composite
- actions/cache v1 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- peaceiris/actions-gh-pages v3 composite
- actions/checkout v3 composite
- actions/checkout v3 composite
- actions/checkout v3 composite
- actions/checkout v3 composite
- AMReX-Astro/cpp-linter-action main composite
- actions/checkout v3 composite
- actions/upload-artifact v1 composite
- actions/cache v3 composite
- actions/checkout v3 composite
- actions/upload-artifact v3 composite
- actions/cache v3 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- actions/checkout v3 composite
- actions/cache v3 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- actions/checkout v3 composite
- actions/checkout v3 composite
- actions/checkout v3 composite
- actions/checkout v3 composite
- actions/checkout v3 composite
- actions/checkout v3 composite
- Sphinx *
- breathe *
- ipywidgets >=7.1.2
- jupyter >=1.0.0
- more_itertools *
- nbsphinx *
- numpy >=1.13.3
- numpydoc *
- sphinx-prompt *
- sphinx_rtd_theme *
- sphinxcontrib_bibtex *
- breathe ==4.11.0
- sphinx ==2.4.4
- sphinxcontrib-katex ==0.6.0
- actions/checkout v3 composite
- notebook
- xeus-cling 0.8.1.*
- breathe