posydon.binary_evol.CE

posydon.binary_evol.CE.step_CEE

Common envelope evolution step.

Calculates the evolution of a star in a BinaryStar object. It uses the alpha-perscription and caclulates how much the orbit has to shrink in order to expel its envelope. If in that separation, one of the star fills its RL, then the system is considered a merger. Else the common envelope is lost and we are left with a binary system with the core of the donor star (which initiated the unstable CEE) and the core of the copmanion. For now it works with the donor star being either a type of H_giant (with a He core) or He_giant (with a CO core) and the companion star being either a MS or compact object star, not contribyting to the CE.

If profiles exist we are able to calculate on the spot the lambda parameter for the donor star, else we use the default values

param binary:

type binary:

BinaryStar (An object of class BinaryStar defined in POSYDON)

param verbose:

In case we want information about the CEE (the default is False).

type verbose:

Boolean

class posydon.binary_evol.CE.step_CEE.StepCEE(prescription=MODEL['prescription'], common_envelope_efficiency=MODEL['common_envelope_efficiency'], common_envelope_lambda_default=MODEL['common_envelope_lambda_default'], common_envelope_option_for_lambda=MODEL['common_envelope_option_for_lambda'], common_envelope_option_for_HG_star=MODEL['common_envelope_option_for_HG_star'], common_envelope_option_after_succ_CEE=MODEL['common_envelope_option_after_succ_CEE'], common_envelope_alpha_thermal=MODEL['common_envelope_alpha_thermal'], core_definition_H_fraction=MODEL['core_definition_H_fraction'], core_definition_He_fraction=MODEL['core_definition_He_fraction'], CEE_tolerance_err=MODEL['CEE_tolerance_err'], mass_loss_during_CEE_merged=MODEL['mass_loss_during_CEE_merged'], verbose=MODEL['verbose'], **kwargs)[source]

Bases: object

Compute supernova final remnant mass, fallback fraction & stellar state.

This consider the nearest neighboor of the He core mass of the star, previous to the collapse. Considering a set of data for which the He core mass of the compact object projenitos previous the collapse, the final remnant mass and final stellar state of the compact object is known.

Parameters:

verbose (bool) – If True, the messages will be prited in the console.

Keyword Arguments:

prescription (str) –

Prescription to use for computing the prediction of common enevelope evolution. Available options are:

  • ’alpha-lambda’ : Considers the the alpha-lambda prescription described in [1] and [2] to predict the outcome of the common envelope evolution. If the profile of the donor star is available then it is used to compute the value of lambda.

References

[1]

Webbink, R. F. (1984). Double white dwarfs as progenitors of R Coronae Borealis stars and Type I supernovae. The Astrophysical Journal, 277, 355-360.

[2]

De Kool, M. (1990). Common envelope evolution and double cores of planetary nebulae. The Astrophysical Journal, 358, 189-195.

Initialize a StepCEE instance.

CEE_simple_alpha_prescription(binary, donor, comp_star, lambda1_CE, mc1_i, rc1_i, donor_type, lambda2_CE, mc2_i, rc2_i, comp_type, double_CE=False, verbose=False, common_envelope_option_after_succ_CEE=MODEL['common_envelope_option_after_succ_CEE'], core_definition_H_fraction=MODEL['core_definition_H_fraction'], core_definition_He_fraction=MODEL['core_definition_He_fraction'], mass_loss_during_CEE_merged=MODEL['mass_loss_during_CEE_merged'])[source]

Apply the alpha-lambda common-envelope prescription.

It uses energetics to calculate the shrinakge of the orbit (and possible merger) of the two components, as well as upadate their new masses, during a common-envelope phase.

Parameters:
  • binary (BinaryStar object) – Instance of the binary to evolve.

  • donor (SingleStar object) – The donor star

  • comp_star (SingleStar object) – The companion star

  • lambda1_CE (float) – Lambda previously calculated for the donor’s envelope binding energy.

  • mc1_i (float) – core mass of the donor

  • rc1_i (float) – core radius of the donor

  • donor_type (string) – String dictating whether the donor has a H-envelope or He-envelope

  • lambda2_CE (float) – Lambda previously calculated for the companion’s envelope binding energy.

  • mc2_i (float) – core mass of the companion

  • rc2_i (float) – core radius of the companion

  • comp_type (string) – String dictating whether the companion has a H-envelope or He-envelope.

  • double_CE (bool) – In case we have a double CE situation.

  • verbose (bool) – In case we want information about the CEE.

  • common_envelope_option_after_succ_CEE (str) –

    Options are:

    1. ”core_replaced_noMT”

      he_core_mass/radius (or co_core_mass/radius for CEE of stripped_He*) are replaced according to the new core boundary used for CEE (based on core_definition_H/He_fraction) but no other change in period after succesful ejection at alpha-lambda prescription.

    2. ”core_not_replaced_noMT”

      he_core_mass/radius (or co_core_mass/radius for CEE of stripped_He*) staying as preCEE and no other change in period after succesful ejection at alpha-lambda prescription.

    3. ”core_not_replaced_stableMT”

      he_core_mass/radius (or co_core_mass/radius for CEE of stripped_He*) staying as preCEE and after succesful ejection at alpha-lambda prescription, we assume an instantaneous stableMT phase (non-conservative, with mass lost from accretor) from the donor (or from donor and simultaneously the accretor at double_CE), taking away the extra “core” mass as defined by the core boundary used for CEE (based on core_definition_H/He_fraction).

    4. ”core_not_replaced_windloss”

      he_core_mass/radius (or co_core_mass/radius for CEE of stripped_He*) staying as preCEE and after succesful ejection at alpha-lambda prescription, we assume a instantaneous windloss phase from the donor (or from donor and simultaneously the accretor at double_CE), taking away the extra “core” mass as defined by the core boundary used for CEE (based on core_definition_H/He_fraction).

  • core_definition_H_fraction (float) – The value of the H abundance to define the envelope-core boundary in He_cores.

  • core_definition_He_fraction (float) – The value of the He abundance to define the envelope-core boundary in CO_cores.

  • mass_loss_during_CEE_merged (Boolean) –

    If False, then no mass loss from this step for a merged CEE If True, then we remove mass according to the alpha-lambda prescription

    assuming a final separation where the inner core(s) RLOF starts, and the same lambda(s)

calculate_lambda_CE(donor, verbose=False)[source]

Calculate lambda_CE from an assumed constant value or from profile.

If lambda_CE is calculated from donor’s profile, we also pass a more accurate calculation of the donor core mass for the purposes of CEE.

Parameters:
  • donor (instance of SingleStar) – The donor star to calculate pre-CE quantities.

  • verbose (bool) – In case we want information about the CEE (the default is False).

Returns:

  • lambda_CE (float) – lambda_CE calculated either as an assumed constant value or calculated from profile

  • mc1_i (float) – If lambda_CE is calculated from donor’s profile, we also pass a more accurate calculation of the donor core mass for the purposes of CEE.

  • rc1_i (float) – The radius of the donor’s core