Closed jeffriley closed 2 months ago
I am also wondering what happens by default when this is used in 'FALLBACK' mode with our default 'MULLERMANDEL' --remnant-mass-prescription
. Does that set the value of the p_FallbackFraction
? Is that parameter set to 0 by default, but the 'MULLERMANDEL' prescription is already internally accounting for fallback?
MULLERMANDEL has a slightly different way of accounting for partial fallback, so I don't think this should impact that prescription.
@ilyamandel I confess that I haven't looked in detail, but wont BaseStar::CalculateSNKickMagnitude()
call BH::ReweightSupernovaKickByMass()
even for the MULLERMANDEL
prescription? So vK
will be reduced in addition to the treatment by the MULLERMANDEL
prescription?
GiantBranch::ResolveCoreCollapseSN() will set m_SupernovaDetails.fallbackFraction = 0.0; if using REMNANT_MASS_PRESCRIPTION::MULLERMANDEL .
BaseStar::DrawSNKickMagnitude() will call DrawRemnantKickMullerMandel() if using KICK_MAGNITUDE_DISTRIBUTION::MULLERMANDEL .
Then, for BLACK_HOLE_KICKS_MODE::FALLBACK, we are still applying the full kicks for the Mandel & Muller prescription. The kicks will be reduced for BLACK_HOLE_KICKS_MODE::REDUCED . It's not a combination I would recommend (the Mandel & Muller prescription is already momentum conserving by construction, so no artificial kick reduction for BHs is needed), but I am willing to let people do crazy things if they really want to. :-P
I think this issue has been resolved with #1221 , and I hope my comment above addresses @SimonStevenson's question, so closing. (Of course, please feel free to reopen or create another issue if you think there's still a problem!)
The following COMPAS runs all produce exactly the same output:
The reason is that this call
in
BaseStar::CalculateSNKickMagnitude()
is always defaulting to callingBaseStar::ReweightSupernovaKickByMass()
, which just returnsvK
as passed. The reasonBH::ReweightSupernovaKickByMass()
is never called is that at the time of the call the switch of stellar type has not been done, and the star is not a remnant.I think the simplest fix is to make
BH::ReweightSupernovaKickByMass()
static, and only call it (inBaseStar::CalculateSNKickMagnitude()
) if the predicted stellar type of the remnant isBLACK_HOLE
.This problem was introduced in COMPAS v02.44.04 in the fix for issue #1027
urgency_high
- This is a very urgent issue and should be resolved as soon as possibleseverity_major
- This is a severe bugSteps to reproduce the behavior: Run COMPAS as described above.
Expected behavior The different values for
--black-hole-kicks-mode
produce different outcomes.Versioning