Stellar Astrophysics¶
Class providing individual stellar astrophysics—the properties of single stars as a function of initial mass and metallicity, including the stellar lifetime, the mass ejected (returned to the ISM) at death, and the metal mass yielded. These per-star quantities are integrated over the IMF and star formation history to compute the net recycling, yield, and energy input for a stellar population. Implementations are typically based on stellar evolution grids from e.g. Portinari et al. (1998) or similar libraries and include inverse functions mapping lifetime to initial mass.
Default implementation: stellarAstrophysicsFile
Methods¶
massInitial→double precisionReturns the initial mass of a star of given
lifetimeandmetallicity.double precision lifetime[in]double precision metallicity[in]
massEjected→double precisionReturns the mass ejected by a star of given
massInitialandmetallicity.double precision massInitial[in]double precision metallicity[in]
massYield→double precisionReturns the metal mass yielded by a star of given
massInitialandmetallicity.double precision massInitial[in]double precision metallicity[in]integer atomIndex(optional) [in]
lifetime→double precisionReturns the lifetime of a star of given
massInitialandmetallicity.double precision massInitial[in]double precision metallicity[in]
massInitialSupernovaeTypeII→double precisionReturns the minimum initial mass (in \(\mathrm{M}_\odot\)) of a star which ends its life as a Type II supernova.
stellarAstrophysicsFile¶
A stellar astrophysics class which reads properties of individual stars of different initial mass and metallicity from an XML file and interpolates in them. The stars can be irregularly spaced in the plane of initial mass and metallicity. The XML file should have the following structure:
<stars>
<star>
<initialMass>0.6</initialMass>
<lifetime>28.19</lifetime>
<metallicity>0.0000</metallicity>
<ejectedMass>7.65</ejectedMass>
<metalYieldMass>0.44435954</metalYieldMass>
<elementYieldMassFe>2.2017e-13</elementYieldMassFe>
<source>Table 2 of Tumlinson, Shull & Venkatesan (2003, ApJ, 584, 608)</source>
<url>http://adsabs.harvard.edu/abs/2003ApJ...584..608T</url>
</star>
<star>
.
.
.
</star>
.
.
.
</stars>
Each star element must contain the initialMass (given in \(\mathrm{M}_\odot\)) and metallicity tags. Other tags are optional. lifetime gives the lifetime of such a star (in Gyr), ejectedMass gives the total mass (in \(\mathrm{M}_\odot\)) ejected by such a star during its lifetime, metalYieldMass gives the total mass of metals yielded by the star during its lifetime while elementYieldMassX gives the mass of element X yielded by the star during its lifetime. The source and url tags are not used, but are strongly recommended to provide a reference to the origin of the stellar data.
The minimum initial mass of a star which ends its life as a Type II supernova is set by the [initialMassForSupernovaeTypeII] parameter.
A star which provides a yield for any element is assumed to yield zero mass of every element (for which any star provides a yield) that it does not list.
Lifetimes (and their inverse, the initial mass of a star of given lifetime) are interpolated in the plane of initial mass and metallicity using a bivariate interpolation on the irregularly spaced points. Ejected masses, metal yields, and element yields are typically compiled from different sources which each cover a different region of that plane, such that the points do not cover it uniformly—for example, the asymptotic giant branch and massive star yields in the standard compilation are tabulated at different sets of metallicities. A bivariate interpolation across such gaps can return arbitrary values. These properties are therefore interpolated linearly in initial mass between the stars tabulated at each metallicity, and then linearly in metallicity between the two tabulated metallicities nearest to (and bracketing) the requested metallicity, considering only those metallicities at which the tabulated stars extend down to the requested initial mass. If the requested metallicity lies outside the range of such metallicities, the value at the nearest is used. If no tabulated metallicity extends down to the requested initial mass, the property is zero. Above the most massive star tabulated at a given metallicity, the property at that metallicity is taken to be that of the most massive star scaled in proportion to initial mass (i.e. its value per unit initial mass is held fixed). This keeps each metallicity’s own models in use where its tabulation stops short of others—for example, the Limongi & Chieffi (2018) models extend to 120 \(\mathrm{M}_\odot\) at their highest metallicity but only to 80 \(\mathrm{M}_\odot\) at lower metallicities—rather than taking the property from a tabulation at a very different metallicity. It also means that yields tabulated only at zero metallicity (e.g. those of pair instability supernovae) do not apply at higher metallicities. No such extension is made below the least massive star tabulated at a metallicity, since that would extrapolate one class of stellar model into the mass range of another. A metallicity whose tabulation covers a narrower range of masses than those of its neighbors therefore enters the interpolation only at its least massive star, and properties can change abruptly at that mass. (In stellarPropertiesCompilationKarakas2010Doherty2014LimongiChieffi2018.xml, for example, the only models at \(Z=0.001\) are super-AGB stars of 6.5 \(\mathrm{M}_\odot\) and above, so yields at nearby metallicities change at that mass.)
Yields change discontinuously at [initialMassForSupernovaeTypeII], where the stars that end their lives on the asymptotic giant branch give way to those that end as supernovae, and the two populations are usually tabulated from different sources with a gap between them (from 5 to 9 \(\mathrm{M}_\odot\) in the standard compilation). Ejected masses and yields are therefore never interpolated across that mass: at each metallicity only the tabulated stars on the same side of it as the requested initial mass are used. Below [initialMassForSupernovaeTypeII], the tabulation at each metallicity is extended upward to it as described above. A star lying between [initialMassForSupernovaeTypeII] and the least massive tabulated star above it (at any metallicity) is assigned the ejected mass and yields per unit initial mass of a star of that least massive tabulated mass.
(Default implementation)
Methods
readRead stellar astrophysics data from file.
Parameters
[fileName](string;0..1; defaultinputPath(pathTypeDataStatic)//'stellarAstrophysics/stellarPropertiesCompilationStandard.xml') — The name of the XML file from which to read stellar properties (ejected masses, yields, etc.).[initialMassForSupernovaeTypeII](real;0..1; default8.0d0) — The minimum initial mass (in \(\mathrm{M}_\odot\)) of a star which ends its life as a Type II supernova. Ejected masses and yields are not interpolated across this mass.