Stellar Multiplicity Object¶
The properties of multiple systems in the stellar population is
defined by the stellar multiplicity object. The multiplicity classes
are defined in spisea/imf/multiplicity.py
.
To call a multiplicity class:
from spisea.imf import multiplicity
multi_obj = multiplicity.<class_name>
The multiplicity object is an input for the IMF Object, as it impacts how the stellar masses are drawn.
The user can choose either
an unresolved or a resolved multiplicity object. If a resolved
multiplicity object is selected, then orbital parameters are
assigned to each companion star (e.g semi-major axis, eccentricity,
inclination). These values are added as additional columns in the companions
table off of the cluster object.
Note that the synthetic photometry
returned in the star_systems
table off the cluster object is the
same for both unresolved and resolved multiplicity classes: it
represents the combined photometry of all stars within a given system.
Unresolved Multiplicity Classes¶
- class imf.multiplicity.MultiplicityUnresolved(MF_amp=0.44, MF_power=0.51, CSF_amp=0.5, CSF_power=0.45, CSF_max=3, q_power=-0.4, q_min=0.01, companion_max=False)¶
The properties of stellar companions (see notes below). The default parameters are as described in Lu et al. 2013. These parameters are most appropriate for stellar populations with ages <10 Myr.
- Parameters
- MF_ampfloat, optional
The amplitude of the power-law describing the Multiplicity Fraction as a function of stellar mass.
- MF_powerfloat, optional
The power of the power-law describing the Multiplicity Fraction as a function of stellar mass.
- CSF_ampfloat, optional
The amplitude of the power-law describing the companion star fraction as a function of stellar mass.
- CSF_powerfloat, optional
The power of the power-law describing the companion star fraction as a function of stellar mass.
- CSF_maxfloat, optional
The maximum allowed companion star fraction, which is the expectation value for the number of companion stars. Given a CSF_max = 3, some systems will still have more than 3 companions.
- q_powerfloat, optional
The power of the power-law describing the probability density function for the mass ratio.
- q_minfloat, optional
The minimum allowed Q value for the probability density function of the mass ratio.
- companion_maxbool, optional
Sets CSF_max is the max as the max number of companions. Default False.
Notes
The number of stellar companions, their masses, and separations are be described by the following functions:
Multiplicity Fraction – the number of stellar systems that host multiple stars. In other words, the number of primary stars with companions. The multiplicity fraction (MF) is typically described as:
B + T + Q + ... MF = --------------------- S + B + T + Q + ...
where S = single, B = binary, T = triple, Q = quadruple, etc. The MF also changes with mass and this dependency can be described as a power-law:
MF(mass) = MF_amp * (mass ** MF_power)
Companion Star Fraction – the expected number of companions in a multiple system. The companion star fraction (CSF) also changes with mass and this dependency can be described as a power-law:
CSF(mass) = CSF_amp * (mass ** CSF_power)
The companion star fraction is clipped to some maximum value, CSF_max. The actual number of companions is drawn from a Poisson distribution with an expectation value of CSF.
Mass Ratio (Q) – The ratio between the companion star mass and primary star mass, Q = (m_comp / m_prim ) has a probability density function described by a powerlaw:
P(Q) = Q ** q_power for q_min <= Q <= 1
Current observations show no significant mass dependence.
Methods
companion_star_fraction
(mass)Given a star's mass, determine the average number of companion stars (companion star fraction = CSF).
multiplicity_fraction
(mass)Given a star's mass, determine the probability that the star is in a multiple system (multiplicity fraction = MF).
random_q
(x)Generative function for companion mass ratio, equivalent to the inverse of the CDF.
- companion_star_fraction(mass)¶
Given a star’s mass, determine the average number of companion stars (companion star fraction = CSF).
- Parameters
- massfloat or numpy array
Mass of primary star
- Returns
- csffloat or numpy array
Companion Star Fraction, the expected number of companions for a star at this mass.
- multiplicity_fraction(mass)¶
Given a star’s mass, determine the probability that the star is in a multiple system (multiplicity fraction = MF).
- Parameters
- massfloat or numpy array
Mass of primary star.
- Returns
- mffloat or numpy array
Multiplicity Fraction, the fraction of stars at this mass that will have one or more companions.
- random_q(x)¶
Generative function for companion mass ratio, equivalent to the inverse of the CDF.
q = m_compnaion / m_primary P(q) = q ** beta for q_min <= q <= 1
- Parameters
- xfloat or array_like
Random number between 0 and 1.
- Returns
- qfloat or array_like
companion mass ratio(s)
Resolved Multiplicity Classes¶
- class imf.multiplicity.MultiplicityResolvedDK(a_amp=379.79953034, a_break=4.90441533, a_slope1=-1.80171539, a_slope2=4.23325571, a_std_slope=1.19713084, a_std_intercept=1.28974264, **kwargs)¶
Bases:
MultiplicityUnresolved
Sub-class of MultiplicityUnresolved that adds semimajor axis and eccentricity information for multiple objects from distributions described in Duchene and Kraus 2013
- Parameters
- a_amp: float, optional
Ampltiude of the broken power law describing the log_semimajoraxis
- a_break: float, optional
Break location on the x-axis of the broken power law describing the log_semimajoraxis
- a_slope1: float, optional
Slope of the left side of the broken power law describing the log_semimajoraxis
- a_slope2: float, optional
Slope of the right side of the broken power law describing the log_semimajoraxis
- a_std_slope: float, optional
Slope of the line that fit sigma_log_semimajoraxis vs log_mass
- a_std_intercept: float, optional
Intercept of the line that fit sigma_log_semimajoraxis vs log_mass
Methods
companion_star_fraction
(mass)Given a star's mass, determine the average number of companion stars (companion star fraction = CSF).
log_semimajoraxis
(mass)Generate the semimajor axis for a given mass.
multiplicity_fraction
(mass)Given a star's mass, determine the probability that the star is in a multiple system (multiplicity fraction = MF).
random_companion_count
(x, CSF, MF)Helper function: calculate number of companions.
random_e
(x)Generate random eccentricity from the inverse of the CDF where the PDF is f(e) = 2e from Duchene and Kraus 2013
random_is_multiple
(x, MF)Helper function: determine if star is in multiple system.
random_keplarian_parameters
(x, y, z)Generate random incliniation and angles of binary system
random_q
(x)Generative function for companion mass ratio, equivalent to the inverse of the CDF.