synthpop.modules.post_processing.process_dark_compact_objects
Post-processing to account for dim compact objects, based on PopSyCLE (Rose et al 2022).
The module will take all objects that have evolved past the MIST grid, and assign them a final mass, removing their photometry. Optionally, one can just remove all of these objects instead.
It can also optionally add random kick velocities to neutron stars and black holes, according to a Maxwellian distribution with a user-input mean.
Classes
Post-processing to account for dim compact objects, based on PopSyCLE (Rose et al 2022). |
Module Contents
- class synthpop.modules.post_processing.process_dark_compact_objects.ProcessDarkCompactObjects(model, logger, remove=False, ifmr_name='SukhboldN20', kick_mean_bh=0, kick_mean_ns=0, **kwargs)
Bases:
synthpop.modules.post_processing._post_processing.PostProcessingPost-processing to account for dim compact objects, based on PopSyCLE (Rose et al 2022).
Attributes
- remove=Falseboolean
if true, remove dark compact objects from the catalog
- ifmr_name=’SukhboldN20’string
selected initial-final mass relation; options are ‘SukhboldN20’, ‘Raithel18’, ‘Spera15’
- kick_mean_bh=0float
mean of the maxwellian kick distribution for black holes (km/s)
- kick_mean_ns=0float
mean of the maxwellian kick distribution for neutron stars (km/s)
- remove = False
- ifmr_name = 'SukhboldN20'
- kick_mean_ns = 0
- kick_mean_bh = 0
- mass_bh(m_zams, feh, f_ej=0.9)
Black hole mass calculation for Raithel18 and SukhboldN20
Parameters
- m_zams
float or array of float values for initial stellar mass in units of solar mass
- f_ej
float value representing the ejection fraction, or how much of the star’s envelope is ejected in the supernova default value 0.9 adopted from Lam et al. (2020)
Returns
- m_bh
float or array of float values for final black hole mass in units of solar mass
- mass_ns(m_zams)
Neutron star final mass calculation, adopting the 1.36 Msun average with a standard deviation of 0.09. Based on PopSyCLE (Rose et al, 2022)
Parameters
- m_zams
float or array of float values for initial stellar mass in units of solar mass
Returns
- m_ns
float or array of float values for final neutron star mass in units of solar mass
- mass_wd(m_zams)
White dwarf final mass calculation. Based on PopSyCLE (Rose et al. 2022)
Parameters
- m_zams
float or array of float values for initial stellar mass in units of solar mass
Returns
- m_wd
float or array of float values for final white dwarf mass in units of solar mass
- mass_spera15(m_zams, feh)
Remnant mass calculation from Spera et al 2015, appendix C Takes in the m_zams and Fe/H as lists
- compact_type_from_final(m_fin)
Determination of compact object type from final mass Based on PopSyCLE (Lam et al 2020; Rose et al 2022) Which pulls from Spera et al 2015
Parameters
- m_fin
float value for final mass in units of solar mass
Returns
- m_type
integer value indicating object type 1 = dim white dwarf 2 = neutron star 3 = black hole
- compact_type_validation(m_type, m_prelim, m_ns)
Reassign low-mass BHs to NSs Based on PopSyCLE (Lam et al 2020; Rose et al 2022)
Parameters
- m_type
int value for assigned compact object type
- m_prelim
float value for compact object mass in units of solar mass
- m_ns
float neutron star mass generated for the objects
Returns
- m_type
integer value indicating updated object type 2 = neutron star 3 = black hole
- m_compact
updated mass of NS or BH
- compact_type_from_initial(m_zams, feh)
Probabilistic drawing of compact object types Based on PopSyCLE (Lam et al 2020; Rose et al 2022) Which pulls from Rathiel et al 2018 and Sukhbold et al 2020
Parameters
- m_zams
array of float values for initial stellar mass in units of solar mass
- feh
array of float values for initial metallicity [Fe/H]
Returns
- m_type
array of integer values indicating object type 0 = non-compact object or luminous white dwarf 1 = dim white dwarf 2 = neutron star 3 = black hole
- do_post_processing(dataframe: pandas.DataFrame) pandas.DataFrame
Perform the post-processing and return the modified DataFrame.