AstrochemicalYields
Documentation for AstrochemicalYields.
AstrochemicalYields.α_elements
AstrochemicalYields.AbstractYield
AstrochemicalYields.Kobayashi2006.Kobayashi2006SN
AstrochemicalYields.Nomoto2006.Nomoto2006SN
AstrochemicalYields.Portinari1998.Portinari1998SN
AstrochemicalYields.Vincenzo2016
AstrochemicalYields.ejecta_alpha_mass
AstrochemicalYields.ejecta_mass
AstrochemicalYields.ejecta_metal_mass
AstrochemicalYields.extend_bounds
AstrochemicalYields.isotopes
AstrochemicalYields.preSN_mass
AstrochemicalYields.remnant_mass
AstrochemicalYields.α_elements
— ConstantList of α elements used in ejectaalphamass taken from Nomoto+2006. C is sometimes included, but not here.
AstrochemicalYields.AbstractYield
— TypeAbstractYield
is the abstract supertype for all yield tables. Yield table subtypes should be made callable with initial metal mass fraction Z
and mass M
(in solar masses), returning the yield for all isotopes in units of solar masses. Subtypes should additionally implement the following methods:
AstrochemicalYields.Vincenzo2016
— TypeVincenzo2016(; bounds=Throw())
Interpolator for the stellar lifetime fits of Vincenzo+2016. These are based on PARSEC stellar models. The lifetimes can be interpolated by calling an instance with a metal mass fraction Z
and a stellar mass M
(in solar masses), returning the stellar lifetime in Gyr. The keyword argument bounds
should be a valid Interpolations.jl
extrapolation specifier that will determine how the interpolation is extrapolated (e.g., Flat()
).
julia> using AstrochemicalYields: Vincenzo2016
julia> v = Vincenzo2016();
julia> M, Z = 1.0, 1e-2;
julia> v(Z, M) ≈ 9.876997213870718
true
AstrochemicalYields.ejecta_alpha_mass
— Methodejecta_alpha_mass(table::AbstractYield, Z, M)
Returns the mass of ejected alpha elements (O, Ne, Mg, Si, S, Ar, Ca, and Ti) for a star with initial metallicity Z
and initial stellar mass M
(masses in solar masses).
AstrochemicalYields.ejecta_mass
— Methodejecta_mass(table::AbstractYield, Z, M)
Returns the mass of all ejected materials for a star with initial metallicity Z
and initial stellar mass M
(masses in solar masses). This is generally preSN_mass(...) - remnant_mass(...)
.
AstrochemicalYields.ejecta_metal_mass
— Methodejecta_metal_mass(table::AbstractYield, Z, M)
Returns the mass of ejected metals (elements heavier than helium) for a star with initial metallicity Z
and initial stellar mass M
(masses in solar masses).
AstrochemicalYields.extend_bounds
— Methodextend_bounds(x, N::Integer)
If x isa Number
, returns an SVector{N, typeof(x)}(x)
, else returns x
. Used for adapting constant interpolations for Interpolations.jl into multi-valued SVectors
.
AstrochemicalYields.isotopes
— Methodisotopes(table::AbstractYield)
Returns a NTuple{N, Symbol}
giving identifiers for the isotopes available in the yield table.
AstrochemicalYields.preSN_mass
— Methodremnant_mass(table::AbstractYield, Z, M)
Returns the pre-supernova mass of a star with initial metallicity Z
and initial stellar mass M
(masses in solar masses). This is not always equal to the stellar initial mass as massive stars can lose mass due to winds before becoming supernovae.
AstrochemicalYields.remnant_mass
— Methodremnant_mass(table::AbstractYield, Z, M)
Returns the remnant mass of a star with initial metallicity Z
and initial stellar mass M
(masses in solar masses).
AstrochemicalYields.Kobayashi2006.Kobayashi2006SN
— TypeKobayashi2006SN(; bounds=Throw()) <: AbstractYield
Load the Kobayashi+2006 core-collapse supernova yield table (this is mostly the same as Nomoto+2006). The yield table can be interpolated by calling it with the metal mass fraction Z
and stellar mass M
(in solar masses) of the progenitor. The keyword argument bounds
should be a valid Interpolations.jl
extrapolation specifier that will determine how the interpolation is extrapolated (e.g., Flat()
).
julia> n = Kobayashi2006SN();
julia> n(0.002, 13.5) isa NamedTuple
true
AstrochemicalYields.Nomoto2006.Nomoto2006SN
— TypeNomoto2006SN(; bounds=Throw()) <: AbstractYield
Load the Nomoto+2006 core-collapse supernova yield table. The yield table can be interpolated by calling it with the metal mass fraction Z
and stellar mass M
(in solar masses) of the progenitor. The keyword argument bounds
should be a valid Interpolations.jl
extrapolation specifier that will determine how the interpolation is extrapolated (e.g., Flat()
).
julia> n = Nomoto2006SN();
julia> n(0.002, 13.5) isa NamedTuple
true
AstrochemicalYields.Portinari1998.Portinari1998SN
— TypePortinari1998SN(; bounds=Throw()) <: AbstractYield
Load the Portinari+1998 core-collapse supernova yield table. The yield table can be interpolated by calling it with the metal mass fraction Z
and stellar mass M
(in solar masses) of the progenitor. The keyword argument bounds
should be a valid Interpolations.jl
extrapolation specifier that will determine how the interpolation is extrapolated (e.g., Flat()
).
julia> n = Portinari1998SN();
julia> n(0.002, 13.5) isa NamedTuple
true