MIST v2.5
Here we describe the interface we provide to the MIST v2.5 library of stellar evolutionary tracks. See the MIST overview page for a comparison with MIST v1.2.
The MIST v2.5 tracks are described in Dotter et al. [13] (α-enhanced models) and Bauer et al. [14] (white dwarf cooling sequences). The key advances relative to MIST v1.2 are:
- [α/Fe] as a free parameter: five [α/Fe] values spanning −0.2 to +0.6 are provided, making MIST v2.5 particularly well-suited for studying metal-poor stellar populations where α-enhancement is common.
- Revised solar abundances: the v2.5 models adopt solar abundances from Grevesse and Sauval [16] rather than Asplund et al. [15] used in v1.2. The
MISTv2Chemistrytype (provided by BolometricCorrections.jl) encodes this mixture. - Denser metallicity grid: 17 [Fe/H] values (vs. 15 in v1.2), adding −2.75 and −2.25 dex.
- Altered initial mass grid: 156 mass points (vs. 196 in v1.2) but with denser sampling in the range 0.7–1.2 M☉.
Data Acquisition
The MIST v2.5 tracks are organized by rotation parameter (vvcrit) and α-element enhancement (afe). Each (vvcrit, afe) combination is a separate DataDep. The main access point is MISTv2Library, which takes both parameters as arguments:
lib = MISTv2Library(0.0, 0.0) # non-rotating, solar-scaled [α/Fe]=0
lib = MISTv2Library(0.4, 0.4) # rotating, α-enhanced [α/Fe]=+0.4The available values are:
vvcrit:StellarTracks.MIST.vvcrit_grid_v2= {0.0, 0.4}afe:StellarTracks.MIST.afe_grid_v2= {−0.2, 0.0, 0.2, 0.4, 0.6}
The first time you call MISTv2Library for a given (vvcrit, afe) combination, you will be prompted to download the required data files. Each combination requires downloading 16–17 .txz archives (one per [Fe/H] value; the [α/Fe] = +0.6 grid has 16 values because [Fe/H] = +0.5 is not available). The total data volume per combination is approximately 1.3–1.5 GB before processing and ~160 MB after. Information on customizing the install location is available here.
Each downloaded DataDep is named MISTv2.5_vvcrit<V>_afe_<A>, e.g. MISTv2.5_vvcrit0.0_afe_p0 for vvcrit=0.0, afe=0.0. To remove a specific combination, run e.g. using DataDeps; rm(datadep"MISTv2.5_vvcrit0.0_afe_p0"; recursive=true).
Table Details
As with v1.2, only the subset of columns given by StellarTracks.MIST.select_columns is saved after processing. The MIST v2.5 tracks use the same column format as v1.2.
using StellarTracks.MIST
MIST.select_columns(:star_age, :log_L, :log_Teff, :log_g, :log_surf_cell_z)Note that the MIST v2.5 grid has some individual mass tracks missing for certain (feh, vvcrit, afe) combinations. MISTv2TrackSet silently skips missing files rather than erroring, so the set of available masses may differ across the parameter grid.
The tracks of white dwarf progenitors ($0.6\,M_\odot \lesssim M < 7\,M_\odot$) continue past the end of the TP-AGB (MIST.eep_idxs.END_TPAGB) through the white dwarf cooling sequence [14]. By default, MISTv2TrackSet and MISTv2Library drop these EEPs, so that isochrones contain only living stars, as for the other libraries. Pass wd = true to keep the cooling sequence; isochrones then include white dwarfs descended from progenitors up to $\sim 6.5\,M_\odot$, and the largest initial mass of an isochrone is no longer that of the most evolved living star.
Examples
Load the MIST v2.5 library of non-rotating, solar-scaled models. The vvcrit and afe parameters must be exact values from the grid.
using StellarTracks.MIST
lib = MISTv2Library(0.0, 0.0)MISTv2Library with vvcrit=0.0, afe=0.0. Valid [M/H] range: (-4.0, 0.5).Interpolate an isochrone at log10(age [yr]) = 10.05 and $[\text{M}/\text{H}] = -1.234$. The isochrone is returned as a NamedTuple.
iso = isochrone(lib, 10.05, -1.234)(eep = [244, 245, 246, 247, 248, 249, 250, 251, 252, 253 … 1400, 1401, 1402, 1403, 1404, 1405, 1406, 1407, 1408, 1409], m_ini = [0.10045440288585127, 0.1027796853253648, 0.10516919581125582, 0.10762497887578185, 0.1101491512482873, 0.1127439042438625, 0.11541150614048754, 0.1181543045117766, 0.12097472850818781, 0.12387549045829424 … 0.8365668564611961, 0.8365669301332221, 0.8365670024884362, 0.8365670712473162, 0.8365671334587444, 0.8365671888474429, 0.8365672376742695, 0.8365672816979466, 0.836567322047887, 0.8365673597681293], logTe = [3.5018560390829148, 3.5064253182376115, 3.5110657911141248, 3.515764073002581, 3.520504293103436, 3.525267794202358, 3.530032752159829, 3.534773739310427, 3.539461253973277, 3.5440615181054325 … 3.607778649005571, 3.608366352700592, 3.609040767447616, 3.6098307098390063, 3.610874603859189, 3.611922589919255, 3.612942346599734, 3.6139014345131146, 3.6148247831458002, 3.615728104045334], Mbol = [12.068074036008737, 11.980741937185835, 11.892275991362487, 11.802811475721565, 11.712504774512826, 11.621535426612285, 11.530108837934614, 11.43845943309118, 11.346854113938189, 11.255589813679507 … -3.6523257462511, -3.644173549219317, -3.6357503985199657, -3.6266404890455988, -3.616966634629537, -3.6069008550730906, -3.5963574279503554, -3.585410356503629, -3.5741364413189314, -3.562617534805422], logg = [5.3318328474338585, 5.324426310534936, 5.3169215042632185, 5.309322317883701, 5.30163255359679, 5.293855875453452, 5.285995764669318, 5.278055494641845, 5.2700381600521515, 5.261946168595376 … 0.25471577482026914, 0.2578696581508651, 0.2613585771190793, 0.26555147594107564, 0.27048247840303763, 0.2760518816154118, 0.2822647856056077, 0.28892449677278015, 0.2959702663580699, 0.30332014569191595], logL = [-2.9312296144034944, -2.8962967748743336, -2.8609103965449947, -2.8251245902886257, -2.7890019098051315, -2.7526141706449136, -2.716043535173846, -2.6793837732364723, -2.6427416455752755, -2.6062359254718026 … 3.35693029850044, 3.353669419687727, 3.3503001594079866, 3.3466561956182397, 3.342786653851815, 3.338760342029236, 3.3345429711801415, 3.3301641426014514, 3.325654576527573, 3.3210470139221693], log_surf_cell_z = [-2.9993080899011035, -2.999308089861811, -2.9993080897621875, -2.9993080895901096, -2.9993080893321817, -2.999308088971742, -2.9993080884911345, -2.9993080878724845, -2.999308087092097, -2.999308086124942 … -3.004061032814657, -3.00406094280788, -3.004060860839557, -3.0040607910821433, -3.004060738954327, -3.004060699611468, -3.004060659805938, -3.0040601021103988, -3.0040596857194504, -3.004059357420098])The result can be converted to a table:
using TypedTables: Table
Table(iso)Table with 7 columns and 1166 rows:
eep m_ini logTe Mbol logg logL log_surf_cell_z
┌────────────────────────────────────────────────────────────────────
1 │ 244 0.100454 3.50186 12.0681 5.33183 -2.93123 -2.99931
2 │ 245 0.10278 3.50643 11.9807 5.32443 -2.8963 -2.99931
3 │ 246 0.105169 3.51107 11.8923 5.31692 -2.86091 -2.99931
4 │ 247 0.107625 3.51576 11.8028 5.30932 -2.82512 -2.99931
5 │ 248 0.110149 3.5205 11.7125 5.30163 -2.789 -2.99931
6 │ 249 0.112744 3.52527 11.6215 5.29386 -2.75261 -2.99931
7 │ 250 0.115412 3.53003 11.5301 5.286 -2.71604 -2.99931
8 │ 251 0.118154 3.53477 11.4385 5.27806 -2.67938 -2.99931
9 │ 252 0.120975 3.53946 11.3469 5.27004 -2.64274 -2.99931
10 │ 253 0.123875 3.54406 11.2556 5.26195 -2.60624 -2.99931
11 │ 254 0.12686 3.54854 11.165 5.25378 -2.57 -2.99931
12 │ 255 0.12993 3.55284 11.0755 5.24555 -2.53419 -2.99931
13 │ 256 0.133083 3.55691 10.9876 5.23726 -2.49905 -2.99931
14 │ 257 0.136334 3.56071 10.9016 5.2289 -2.46464 -2.99931
15 │ 258 0.139726 3.56419 10.8173 5.2204 -2.43093 -2.99931
16 │ 259 0.143264 3.5673 10.7353 5.21176 -2.39812 -2.99931
17 │ 260 0.146914 3.56995 10.6569 5.20307 -2.36677 -2.99931
⋮ │ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮Plot the HR diagram:
Load a bolometric correction grid from BolometricCorrections.jl to place the isochrone into an observational photometric system. Because the MIST v2.5 stellar track and BC grids share the same MISTv2Chemistry chemical mixture, metallicities are handled consistently without the need for any conversion.
using BolometricCorrections.MIST: MISTv2BCGrid
bc = MISTv2BCGrid("JWST")
iso_phot = isochrone(lib, bc, 10.05, -1.234, 0.02) # logAge, [M/H], AvTable with 36 columns and 1166 rows:
eep m_ini logTe Mbol logg logL log_surf_cell_z ⋯
┌───────────────────────────────────────────────────────────────────────
1 │ 244 0.100454 3.50186 12.0681 5.33183 -2.93123 -2.99931 ⋯
2 │ 245 0.10278 3.50643 11.9807 5.32443 -2.8963 -2.99931 ⋯
3 │ 246 0.105169 3.51107 11.8923 5.31692 -2.86091 -2.99931 ⋯
4 │ 247 0.107625 3.51576 11.8028 5.30932 -2.82512 -2.99931 ⋯
5 │ 248 0.110149 3.5205 11.7125 5.30163 -2.789 -2.99931 ⋯
6 │ 249 0.112744 3.52527 11.6215 5.29386 -2.75261 -2.99931 ⋯
7 │ 250 0.115412 3.53003 11.5301 5.286 -2.71604 -2.99931 ⋯
8 │ 251 0.118154 3.53477 11.4385 5.27806 -2.67938 -2.99931 ⋯
9 │ 252 0.120975 3.53946 11.3469 5.27004 -2.64274 -2.99931 ⋯
10 │ 253 0.123875 3.54406 11.2556 5.26195 -2.60624 -2.99931 ⋯
11 │ 254 0.12686 3.54854 11.165 5.25378 -2.57 -2.99931 ⋯
12 │ 255 0.12993 3.55284 11.0755 5.24555 -2.53419 -2.99931 ⋯
13 │ 256 0.133083 3.55691 10.9876 5.23726 -2.49905 -2.99931 ⋯
14 │ 257 0.136334 3.56071 10.9016 5.2289 -2.46464 -2.99931 ⋯
15 │ 258 0.139726 3.56419 10.8173 5.2204 -2.43093 -2.99931 ⋯
16 │ 259 0.143264 3.5673 10.7353 5.21176 -2.39812 -2.99931 ⋯
17 │ 260 0.146914 3.56995 10.6569 5.20307 -2.36677 -2.99931 ⋯
⋮ │ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋱using TypedTables: columnnames
columnnames(iso_phot)(:eep, :m_ini, :logTe, :Mbol, :logg, :logL, :log_surf_cell_z, :NIRCAM_F070W, :NIRCAM_F090W, :NIRCAM_F115W, :NIRCAM_F140W, :NIRCAM_F150W, :NIRCAM_F150W2, :NIRCAM_F162M, :NIRCAM_F164N, :NIRCAM_F182M, :NIRCAM_F187N, :NIRCAM_F200W, :NIRCAM_F210M, :NIRCAM_F212N, :NIRCAM_F250M, :NIRCAM_F277W, :NIRCAM_F300M, :NIRCAM_F322W2, :NIRCAM_F323N, :NIRCAM_F335M, :NIRCAM_F356W, :NIRCAM_F360M, :NIRCAM_F405N, :NIRCAM_F410M, :NIRCAM_F430M, :NIRCAM_F444W, :NIRCAM_F460M, :NIRCAM_F466N, :NIRCAM_F470W, :NIRCAM_F480W)To take advantage of the [α/Fe] degree of freedom, load a library with a non-zero afe value. Here we compare solar-scaled and α-enhanced isochrones at the same age and [M/H]. Note that both isochrone calls receive the same value of [M/H], not [Fe/H]; at the same [M/H] the α-enhanced population has a lower [Fe/H] but the same total metal mass fraction Z.
lib_afe = MISTv2Library(0.0, 0.4)
iso_afe = isochrone(lib_afe, 10.05, -1.234)Here we compare JWST/NIRCam CMDs for α-enhanced and scaled-solar MIST v2.5 models with matched properties of log10(age [yr]) = 10.05, $[\text{M}/\text{H}] = -1.234$, and $A_v=0.02$ mag.
Chemistry API
We re-export the BolometricCorrections.MIST.MISTv2Chemistry type defined in BolometricCorrections.jl that encodes the solar chemical mixture assumed for the MIST v2.5 models (Grevesse and Sauval [16]). Because [α/Fe] is a free parameter in v2.5, the data grid is indexed by [Fe/H] rather than [M/H]. However, the isochrone interface always accepts [M/H] (the total logarithmic metal abundance), and MISTv2Chemistry handles the conversion between [M/H] and [Fe/H] via the Salaris et al. [17] relation. When a MISTv2Library is used with a MISTv2BCGrid, the afe value is inferred from the track library automatically so the correct bolometric corrections are selected.
Library API
StellarTracks.MIST.MISTv2Library — Type
MISTv2Library(vvcrit=0.0, afe=0.0; wd=false)MISTv2Library implements the AbstractTrackLibrary interface for the MIST v2.5 stellar evolution library.
The library interpolates in [M/H] (metallicity). The vvcrit and afe parameters must be exact values from the MIST v2.5 grid (vvcrit_grid_v2 and afe_grid_v2); they select which DataDep is loaded but are not interpolated over. wd is passed to MISTv2TrackSet; by default the white dwarf cooling sequence is excluded.
Calling the library as lib(mh, mass) returns a MISTv2Track or InterpolatedTrack interpolated to mh and mass.
This type also supports isochrone construction (see isochrone).
Examples
julia> p = MISTv2Library(0.0, 0.0)
MISTv2Library with vvcrit=0.0, afe=0.0. Valid [M/H] range: (-4.0, 0.5).
julia> isochrone(p, 10.05, -2) isa NamedTuple
true
julia> p(-2.05, 1.05)
InterpolatedTrack with M_ini=1.05, MH=-2.05, Z=0.000174801, Y=0.249231, X=0.750594.StellarTracks.isochrone — Method
isochrone(p::MISTv2Library, logAge::Number, mh::Number)Interpolates properties of the stellar tracks in the library at the requested logarithmic age (logAge = log10(age [yr])) and logarithmic metallicity [M/H] = mh. Returns a NamedTuple containing the properties listed below:
eep: Equivalent evolutionary pointsm_ini: Initial stellar masses, in units of solar masses.logTe: Base-10 logarithm of the effective temperature [K] of the stellar model.Mbol: Bolometric luminosity of the stellar model.logg: Surface gravity of the stellar model.log_surf_cell_z: Base-10 logarithm of the surface metal mass fraction (Z).
Track Set API
StellarTracks.MIST.MISTv2TrackSet — Type
MISTv2TrackSet(feh, vvcrit=0, afe=0; wd=false)MISTv2TrackSet implements the AbstractTrackSet interface for the MIST v2.5 stellar evolution library.
The MIST v2.5 tracks of white dwarf progenitors continue past the end of the TP-AGB (MIST.eep_idxs.END_TPAGB) through the white dwarf cooling sequence [14]. By default these EEPs are dropped, so that isochrones contain only living stars and their largest initial mass is that of the most evolved living star, as for the other libraries. Set wd = true to keep the white dwarf cooling sequence in track and isochrone interpolation.
julia> ts = StellarTracks.MIST.MISTv2TrackSet(0.0, 0.0, 0.0)
MISTv2TrackSet with MH=0.0, afe=0.0, vvcrit=0.0, Z=0.0185, Y=0.2735, 1409 EEPs and 155 initial stellar mass points.Individual Tracks API
StellarTracks.MIST.MISTv2Track — Type
MISTv2Track(feh, mass, vvcrit=0, afe=0)MISTv2Track implements the AbstractTrack interface for the MIST v2.5 stellar evolution library.
julia> track = StellarTracks.MIST.MISTv2Track(-2, 0.15, 0.0, 0.0)
MISTv2Track with M_ini=0.15, MH=-2.0, afe=0.0, vvcrit=0.0, Z=0.000196117, Y=0.24926, X=0.750544.MIST v2.5 References
This page cites the following references:
- [13]
- A. Dotter, E. B. Bauer, M. Park, C. Conroy, A. P. Milone, M. Joyce and M. Cantiello. MESA Isochrones and Stellar Tracks (MIST). II. Models with alpha-enhanced Chemical Composition. ApJS 283, 64 (2026), arXiv:2602.22012 [astro-ph.SR].
- [14]
- E. B. Bauer, A. Dotter, C. Conroy, T. Cunningham, M. Park and P.-E. Tremblay. MESA Isochrones and Stellar Tracks (MIST). III. The White Dwarf Cooling Sequence. ApJS 283, 41 (2026), arXiv:2509.21717 [astro-ph.SR].
- [15]
- M. Asplund, N. Grevesse, A. J. Sauval and P. Scott. The Chemical Composition of the Sun. Annual Review of Astronomy and Astrophysics 47, 481–522 (2009).
- [16]
- N. Grevesse and A. Sauval. Standard Solar Composition. Space Science Reviews 85, 161–174 (1998).
- [17]
- M. Salaris, A. Chieffi and O. Straniero. The alpha-enhanced Isochrones and Their Impact on the FITS to the Galactic Globular Cluster System. ApJ 414, 580 (1993).