Stellar Mass Loss Rates

Some BC grids for high-mass stars include the stellar mass-loss (outflow) rate as an additional dependent parameter (e.g., the YBC WM-basic grid). To use these grids, we must be able to calculate stellar mass loss rates from a star's other parameters as mass-loss rates are not typically tracked self-consistently in stellar interior models. Most implementations employ scaling relations between the mass-loss rate and parameters like the stellar metallicity and luminosity for radiation-driven winds typical in high-mass O and B stars. For example, PARSEC uses multiple different scaling relations to determine the stellar mass-loss rate depending on the phase of stellar evolution, including Vink et al. (2001) – see section 2.3 of Tang et al. (2014) and Chen et al. (2015) for more details. We include a few such models below. This functionality is provided throught the AbstractMassLoss type.

Björklund 2021

BolometricCorrections.Bjorklund2021MassLossType
Bjorklund2021MassLoss(A = -555//100, 
                      B = 79//100, 
                      C = 216//100, 
                      D = -32//100, 
                      E = 6//1, 
                      Zsol = 13//1000) <: AbstractMassLoss

Stellar mass-loss rate model from Björklund et al. (2021), specifically their Equation 20, which reads

\[\text{log} \left( \dot{M} \right) = -5.55 + 0.79 \, \text{log} \left( \frac{ \text{Z}_* }{ \text{Z}_\odot } \right) + \left[ 2.16 - 0.32 \, \text{log} \left( \frac{ \text{Z}_* }{ \text{Z}_\odot } \right) \right] \, \text{log} \left( \frac{L_*}{10^6 \, L_\odot} \right)\]

Note that their model grid assumed $Z_\odot = 0.013$ following Asplund et al. (2009). Internally, assuming the same variable names as used in the call signature above, we compute this as

\[\text{log} \left( \dot{M} \right) = A + B \, \text{log} \left( \frac{ \text{Z}_* }{ \text{Z}_\odot } \right) + \left[ C + D \, \text{log} \left( \frac{ \text{Z}_* }{ \text{Z}_\odot } \right) \right] \, \left[ \text{log} \left( L_* \right) - E \right]\]

This model was found to be a better fit to the low-metallicity data of Telford et al. (2024) and Hawcroft et al. (2024) than the more commonly used Vink et al. (2001) model.

Instances are callable with (Z, logL) arguments and return the mass-loss rate in solar masses per year, where Z is metal mass fraction and logL is the base-10 logarithm of the star's luminosity in units of solar luminosities.

julia> using BolometricCorrections: Bjorklund2021MassLoss

julia> model = Bjorklund2021MassLoss();

julia> model(1e-3, 5) ≈ 1.1311569779109792e-9 # Mdot in solar mass per year
true
source

Below we reproduce Figure 7 from Björklund et al. (2021).

using CairoMakie
using BolometricCorrections: Bjorklund2021MassLoss
model = Bjorklund2021MassLoss()
Zvals = [model.Zsol, 0.5 * model.Zsol, 0.2 * model.Zsol]
labels = ["Solar", "LMC", "SMC"]
logL = range(6-1.4, 6; length=100)
Mdot = model.(Zvals, logL') # Makes matrix with size (length(Zvals), length(logL))

fig = Figure()
ax = Axis(fig[1, 1], xlabel=L"\log (\text{L} \ \left[ \text{L}_\odot \right]) - 6", ylabel=L"\log \left( \dot{\text{M}} \ \left[ \text{M}_\odot \ \text{yr}^{-1} \right] \right)", yticks = -9:1:-6, xticks = -1.4:0.2:0.0)
for i in eachindex(Zvals, labels)
    lines!(ax, logL .- 6, log10.(Mdot[i, :]), label=labels[i])
end
axislegend(ax, position=:lt)
fig
Example block output

API

BolometricCorrections.AbstractMassLossType

Abstract supertype for all models of stellar mass loss. New models NewModel <: AbstractMassLoss should implement Mdot(m::NewModel, args...) which should return the mass-loss rate in solar masses per year. A generic method is provided to make subtypes callable – (m::AbstractMassLoss)(args...) = Mdot(m, args...).

source

Mass Loss References

This page cites the following references: