What’s New in COSMIC¶
v4.1.0¶
- Additions/changes
kick_info table now includes another column with the time of each supernova
- Code cleanup
Function signature for kick() and evolv2() in the fortran changed to remove
bkickentirelyAlso removed
kick_info_out. Both of these can be reconstructed fromkick_info
Bug fixes: corrected mass sign in bjorklund wind routine in SSE_mlwind.f
v4.0.1¶
- Additions/changes:
applies Hurley track metallicity limits only for SSE
adds ValueError if the masses supplied to initial binary table are outside the supplied track range
updated debug makefile work with new METISSE repo org
v4.0.0¶
- Additions/changes:
Adds the METISSE stellar engine where now the stellar engine must be specified as either sse or metisse.
If metisse is used, the tracks must be specified directly.
v3.7.8¶
- Additions/changes:
Added
smt_periastron_checksetting, which allows the user to toggle whether to check for periastron collision during stable mass transfer. By default, we set this off, which changes the behaviour of previous versions since 3.6.0 (PR #694) which did check for contact at periastron during stable mass transfer. We set this to off as the radial expansion from SSE is likely overestimated, once we connect with COSMIC-METISSE this should likely be set to 1.
v3.7.7¶
- Additions/changes:
Split out alpha1 and acc_lim to have parameters specified for each component in the binary
added several prescriptions for winds and compact object formation
v3.7.6¶
- Additions/changes:
Added
poolandnprocparameters to theindependentsampler. Users can either specify an existing multiprocessing pool or a number of processors to use to create a pool that will be used for the sampling. This offers significant speed-ups for samples larger than 10,000 binaries.
v3.7.5¶
- Fixes:
Prevent tides calculations based on NS/BHs
Track mean_anomaly (save to kick_info) array even when a system is disrupted
Throw an error if invalid metallicities are provided for evolution
v3.7.4¶
This release contains several fixes to how CO core masses/remnant masses are handled. It also adds a new PISN prescription, windflag and LBV winds flag.
- Fixes:
Update
mc_coandmc_heafter adjustingmc = mcmaxinhrdiag.ffor stripped stars. This can be a fairly significant change, up to ~2 Msun. (Used to actually be up to 10 Msun because we added HeMS core mass growth)Make
evolv2.factually log PISN (they get set tokw = 15so were missed previously)Change
loop = 40000(up from 20,000), otherwise 70 Msun stars run out of loops with new mass modifierChanged all existing
pisnprescriptions to usemc_totinstead ofmcbagbfor conditionsUpdate
mc = mtfor ALL remnants instead of just for certain flagsOnly apply conversion from baryonic to gravitational mass once. Previous code APPLIED IT TWICE!! for core-collapse BHs! Create subroutine
baryonic_to_gravitational_mass, which is called throughoutEnsure stellar type changes during hrdiag are logged to the bpp before SN occurs
Add check after CE for whether a SN occurs right at the end
- Additions/changes:
Linearly grow the core mass of HeMS stars from 0 to the value at the start of HeHG and check for core-collapse for all He stars (not just HeHG and HeGB)
Add
dt_mass_modifierargument toEvolve.evolve(). This lets you specify a list of tuples(m_low, m_high, mod), which multipliespts1/pts2/pts3bymodfor stars with primary star (only care about primary, conservative) ZAMS masses betweenm_low <= m_ZAMS < m_highAdded a
windflag = -1option to turn off stellar winds entirely- Added
pisn = -4for Renzo+22/Hendriks+23 prescription for PPISN mass loss With options
ppi_co_shiftandppi_extral_ml
- Added
Add new setting
LBV_flagwhich allows one to turn off LBV winds, use Hurley+2000, or use Belcyznski+2008Change the default LBV winds to Hurley
- Code cleanup:
assign_remnantno longer takesmc_totas a parameter, just get it from the common blockWD chandrasekhar check use
mc_coinstead ofmcRemnant flags 0-4 inclusive use
mc_coinstead ofmcGot rid of
mcxinassign_remnantin favour of clearerm_protoandm_FeNito match the papers[Very minor] Fryer Rapid was using <= instead of < everywhere
- Documentation:
Start new settings gallery in the documentation
Tag settings/options with the version they were added in the docs page and auto link them to release
v3.7.2-3.7.3¶
Issues with PyPi, unreleased.
v3.7.1¶
Bug fix (#729): ensure disruptions are logged with
evol_type==11when SNe occur during CEsBug fix (#725): set
tb=sep=0for cases where AIC caused a WD to explode and leave behind no remnant (evolve_type==9)Bug fix (#724): remove bug where
kstar=15was assigned its previous epoch mass after merging during a CE and the merger product goes SN
v3.7.0¶
Add
remnantflag=5: The Mandel & Muller 2020 prescription for remnant massesAdd
kickflag=6: The Mandel & Muller 2020 prescription for natal kicks. This can be tuned withmm_mu_nsandmm_mu_bhAdd
remnantflag=6: The Maltsev+25 and Willcox+25 prescription for remnant masses. This can be tuned withmaltsev_modeandmaltsev_fallback(Docs) Any tutorial that uses a plain BSEDict now uses one that is drawn from the cosmic-settings.json file to avoid missing changes and saves us updating each docs page
v3.6.2¶
Add functions to
cosmic.utilsfor initC IO that’s more efficient (save_initC,load_initC) by saving identical setting columns separately with only one copy - saves ~1kb per binaryMake He and CO core masses available in output
Change defaults;
qcflag=5andeccfac=10Prevent users from supplying both
qminandm2_minPrevent users from supplying both
sepandporbwhen sampling, calculateporbfromsepas necessaryDefine
binstate=-1as single stars
v3.6.1¶
Add support for single stars in both independent and multidim sampling
update documentation
v3.6.0¶
Overhaul documentation and added debugging environment
Feature: Added Disberg+2025 kick prescription as a new choice of
kickflag(kickflag=5). Applies log-normal distribution to regular CCSN, ECSN/USSN still usesigmadivMaxwellian and BH fallback scaling is still applied viabhflagandbhsigmafracas withkickflag=1
v3.5.0¶
Feature: Added
bpp_columnsandbcm_columnsparameters to theevolve()function to allow users to specify the columns in the bpp and bcm tablesBug fix: Changed
kick.fto use the Pfahl+02 kick prescription by default instead of Kiel & Hurley 2009, this fixes ejection velocities of secondaries and also changed kick_info to have an extra column
v3.4.11¶
Added sampling options to
independentsampler to allow for custom power law distributions forporbandq
v3.4.10¶
Bug fixes:
timestep_conditionsforbcmarrays now raise errors for invalid columns instead of failing silentlyAdd
teff_1andteff_2as variables that can be used to settimestep_conditionsAdd in
-1option to turn off Magnetic Braking in htmbAdded
central_bhandscale_with_central_bhas options to the CMC sampler, in order to add central massive black holes to CMC initial conditions
v3.4.9¶
Added
sampling_target == "total_mass"option to independent sampler so you can target a specific total mass instead of number of binariesAdded
trim_extra_samplesparameter to the same function - which trims your samples to get as close as possible to the target total massBug fixes: secondaries of single stars are now marked as massless remnants instead of main sequence stars, binfrac=0.0 no longer leads to an infinite loop in sampling
v3.4.8¶
removed zsun_wind so that we can match stock BSE exactly and added extra documentation surrounding the winds
added a NaN catch in cosmic-pop that throws a warning of NaNs, saves them to a file, and instructs the user to consider changing pts1 since this is the main driver of NaNs so far
v3.4.7¶
Exchanged any print statements for
warnings.warnto allow silencingFixed up docs to catch warnings
v3.4.6¶
added new Eddington limit prescriptions for BH accretion
cleaned up versioning
v3.4.1-3.4.5¶
updated the actions to build properly
v3.4.1¶
fixed sampling issues for renzo19 and sana12 so that they work with CMC
update to Docker ubuntu image
minor fixes to documentation to stop warnings/errors which break doc website deployment
adds in build wheels for Python 3.9 and 3.10
add warning for mlwind prescriptions which assume zsun = 0.019
modifications to how m2min and qmin are specified in initial conditions sampling
fixed sampling issues from Plummer profiles in cmc.py
fixed Eddington limits such that wind accretion is limited to eddington and thus limits RLO accretion if the wind accretion is already super-Eddington
fixed errors in Marchant+ PISN prescription
v0.0 - 3.4¶
See the discussed changes in our previous releases here