Implement Mandel & Muller 2020 + Maltsev+25 prescription#741
Implement Mandel & Muller 2020 + Maltsev+25 prescription#741TomWagg merged 49 commits intoCOSMIC-PopSynth:developfrom
Conversation
Codecov Report❌ Patch coverage is ❌ Your patch status has failed because the patch coverage (8.15%) is below the target coverage (90.00%). You can increase the patch coverage or adjust the target coverage. Additional details and impacted files@@ Coverage Diff @@
## develop #741 +/- ##
===========================================
- Coverage 86.91% 77.96% -8.94%
===========================================
Files 40 50 +10
Lines 25542 27372 +1830
Branches 0 860 +860
===========================================
- Hits 22198 21340 -858
- Misses 3344 5759 +2415
- Partials 0 273 +273 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
🚨 CMC review requested This pull request modifies one or more of the following files:
A CMC developer should review this PR to ensure corresponding changes are propagated upstream as needed. |
|
🚨 CMC review requested This pull request modifies one or more of the following files:
A CMC developer should review this PR to ensure corresponding changes are propagated upstream as needed. |
|
@katiebreivik as you suggested, this now adds "maltsev_pf_prob" as an option, which is by default 10% but you can vary between 0 and 100% for what fraction of remnants in the "partial fallback" regime actually form partial feedback BHs and not NSs :) |
|
🚨 CMC review requested This pull request modifies one or more of the following files:
A CMC developer should review this PR to ensure corresponding changes are propagated upstream as needed. |
|
🚨 CMC review requested This pull request modifies one or more of the following files:
A CMC developer should review this PR to ensure corresponding changes are propagated upstream as needed. |
katiebreivik
left a comment
There was a problem hiding this comment.
👍 Thanks a million @TomWagg ! Feel free to merge/release if you have time today!
…ynth#741) * start remnant mass, add normal dist * first draft of MM remnant mass * add core mass a parameter for kicks * move random normal to ran3 * fortran line lengths are the bane of my existence * allow for kickflags of 6 * draw natal kicks based on MM * messing around with truncated normals * need to allow for new remnant flag * simplified truncated normal * unindent every line by 6 columns * clean up spin assignments * seems like we should do this for every remnant flag? * move muller mandel to its own subroutine * pass mc_tot to assign_remnant, use with MM20 * final comments explaining truncation * ensure kick uses CO core masses * add new settings, clean up params file * forgot to add them here * remove debug prints * oops they were backwards * draw from gaussian properly * first draft of maltsev * fix new settings * pass kw to check for self stripping * watch for rogue CEs too * more comments * centralise version to just _version.py so they don't get out ot sync * add new settings to all of the tests * update version/changelog * add new options to settings * get rid of extra commas * fix brackets, move sections * add maltsev_pf_prob option, change default mode to 0 * add new setting to test data * match new convention for cosmic-settings * change CMC review workflow to only run when PR opened * make cmc review smarter about how it triggers from * check the settings specifically * typo: mt_type should be 1 here * reorder sn vars to avoid padding, add bpp_ind to shared * use bpp_ind instead of jp, now it's shared :) * columns can move! :o also handle mergers * update settings html to latest * don't need 1000 now, just bpp_ind * clarify settings for maltsev
This pull request introduces version 3.7.0 of the COSMIC codebase, adding new remnant mass and natal kick prescriptions, updating configuration options, and making several improvements to usability and documentation. The most significant changes are the addition of the Mandel & Muller 2020 and Maltsev+25/Willcox+25 remnant mass and kick prescriptions, with corresponding new parameters, as well as updates to default behaviors and documentation.
Major new features and scientific options:
Added support for the Mandel & Muller 2020 remnant mass and natal kick prescriptions (
remnantflag=5,kickflag=6), with new tunable parametersmm_mu_nsandmm_mu_bhfor neutron star and black hole kick scaling, respectively. Also added the Maltsev+25/Willcox+25 remnant prescription (remnantflag=6), with new parametersmaltsev_modeandmaltsev_fallbackto control extrapolation and fallback behavior. [1] [2] [3] [4] [5] [6] [7] [8]The Fortran subroutine
assign_remnantwas refactored to support the new remnant prescriptions, and now passes additional core mass and metallicity parameters as needed. Calls to new subroutines for Mandel & Muller and Maltsev+25/Willcox+25 are included. [1] [2]Configuration and documentation updates:
mm_mu_ns,mm_mu_bh,maltsev_mode,maltsev_fallback) to users, including detailed descriptions and default values in bothdocs/cosmic-settings.jsonand the web config documentation. [1] [2]Versioning and metadata:
src/cosmic/_version.pyin the build system and project metadata. [1] [2] [3]