This page contains a comprehensive description of the simulation snapshots, group catalogs, merger trees, and supplementary data sets. Differences and additions in TNG with respect to the original Illustris public data release are noted: aspects which have changed, or which are new in TNG, are marked in blue, while those marked in green are identical to Illustris.

### 1. Snapshots

#### Organization

There are 100 snapshots stored for every run. These include all particles/cells in the whole volume. The complete snapshot listings, spacings and redshifts can be found in the API. Note that, unlike in Illustris, TNG contains two different types of snapshots: 'full' and 'mini'. While both encompass the entire volume, 'mini' snapshots only have a subset of particle fields available (detailed below). In TNG twenty snapshots are full, while the remaining 80 are mini. The 20 full snapshots are:

Snap Scale factor Redshift
2 0.0769 12
3 0.0833 11
4 0.0909 10
6 0.1 9
8 0.1111 8
11 0.125 7
13 0.1429 6
17 0.1667 5
21 0.2 4
25 0.25 3
33 0.3333 2
40 0.4 1.5
50 0.5 1
59 0.5882 0.7
67 0.6667 0.5
72 0.7143 0.4
78 0.7692 0.3
84 0.8333 0.2
91 0.9091 0.1
99 1 0

Every snapshot is stored in a series of "chunks", i.e. more manageable, smaller-size files. The number of chunks per snapshots is different for the different runs:

Run Alt. Name Total NumPart (DM) Chunks per Snapshot Full Snapshot Size Avg Groupcat Size Total Data Volume
L35n270TNG TNG50-4 19,683,000 11 5.2 GB 20 MB 0.6 TB
L35n270TNG_DM TNG50-4-Dark 19,683,000 4 1.2 GB 10 MB 0.1 TB
L35n540TNG TNG50-3 157,464,000 11 44 GB 130 MB 7.5 TB
L35n540TNG_DM TNG50-3-Dark 157,464,000 4 9.4 GB 50 MB 0.6 TB
L35n1080TNG TNG50-2 1,259,712,000 128 350 GB 860 MB 18 TB
L35n1080TNG_DM TNG50-2-Dark 1,259,712,000 85 76 GB 350 MB 4.5 TB
L35n2160TNG TNG50-1 10,077,696,000 680 2.7 TB 7.2 GB ~320 TB
L35n2160TNG_DM TNG50-1-Dark 10,077,696,000 128 600 GB 2.3 GB 36 TB
L75n455TNG TNG100-3 94,196,375 7 27 GB 110 MB 1.5 TB
L75n455TNG_DM TNG100-3-Dark 94,196,375 4 5.7 GB 40 MB 0.4 TB
L75n910TNG TNG100-2 753,571,000 56 215 GB 650 MB 14 TB
L75n910TNG_DM TNG100-2-Dark 753,571,000 8 45 GB 260 MB 2.8 TB
L75n1820TNG TNG100-1 6,028,568,000 448 1.7 TB 4.3 GB 128 TB
L75n1820TNG_DM TNG100-1-Dark 6,028,568,000 64 360 GB 1.7 GB 22 TB
L205n625TNG TNG300-3 244,140,625 16 63 GB 340 MB 4 TB
L205n625TNG_DM TNG300-3-Dark 244,140,625 4 15 GB 130 MB 1 TB
L205n1250TNG TNG300-2 1,953,125,000 100 512 GB 2.2 GB 31 TB
L205n1250TNG_DM TNG300-2-Dark 1,953,125,000 25 117 GB 810 MB 7.2 TB
L205n2500TNG TNG300-1 15,625,000,000 600 4.1 TB 14 GB 235 TB
L205n2500TNG_DM TNG300-1-Dark 15,625,000,000 75 930 GB 5.2 GB 57 TB

Note that the snapshot data is not organized according to spatial position. Rather, particles within the snapshot files are sorted according to their group/subgroup memberships, according to the FoF or Subfind algorithms. Within each particle type, the sort order is: GroupNumber, SubgroupNumber, BindingEnergy, where particles belonging to the group but not to any of its subgroups ("fuzz") are included after the last subgroup. The following figure provides a schematic view of the particle organization within a snapshot, for one particle type. Note that the truncation of a snapshot in chunks is arbitrary, thus halos may happen to be stored across multiple, subsequent chunks. Similarly, the different particle types of a halo can be stored in different sets of chunks.

Caption. Schematic diagram of the organization of particle/cell data within the snapshots for a single particle type. Within a type, particle order is determined by a global sort of the following fields in this order: FoF group number, Subfind subhalo number, binding energy, nearest FoF group number. This implies that FOF halos are contiguous, although they can span file chunks. Subfind subhalos are only contiguous within a single group, being separated between groups by an "inner fuzz" of all FOF particles not bound to any subhalo. Here $N_c$ indicates the number of file chunks, $n_F$ the number of FOF groups, and $N_{S,j}$ the number of subhalos in $j^{\rm th}$ FoF group.

#### Contents

Every HDF5 snapshot contains several groups: "Header", "Parameters", "Configuration", and five "PartTypeX" groups, for the following particle types (the DM only runs have a single PartType1 group):

• PartType0 - GAS
• PartType1 - DM
• PartType2 - (unused)
• PartType3 - TRACERS
• PartType4 - STARS & WIND PARTICLES
• PartType5 - BLACK HOLES

The most important fields of the Header group are given in the following table.

Field Dimensions Units Description
BoxSize 1 $ckpc/h$ Spatial extent of the periodic box (in comoving units).
MassTable 6 $10^{10} M_\odot/h$ Masses of particle types which have a constant mass (only DM).
NumPart_ThisFile 6 - Number of particles (of each type) included in this (sub-)file.
NumPart_Total 6 - Total number of particles (of each type) across all (sub-)files of this snapshot, modulo $2^{32}$.
NumPart_Total_HighWord 6 - Total number of particles (of each type) across all (sub-)files of this snapshot, divided by $2^{32}$ and rounded downwards.
Omega0 1 - The cosmological density parameter for matter.
OmegaLambda 1 - The cosmological density parameter for the cosmological constant.
Redshift 1 - The redshift corresponding to the current snapshot.
Time 1 - The scale factor a (=1/(1+z)) corresponding to the current snapshot.
NumFilesPerSnapshot 1 - Number of file chunks per snapshot.

The Parameters and Configuration provide the complete set of parameter file options and run-time configuration options used to run TNG. That is, they encode the fiducial "TNG Galaxy Formation Model". Many will clearly map to Table 1 of Pillepich et al. (2018a), while others deal with more numerical/technical options. In the future, together with the release of the TNG initial conditions and the TNG code base of AREPO, this will enable any of the TNG simulations to be reproduced.

The complete snapshot field listings of the PartTypeX groups, including dimensions, units and descriptions, are given for all the particles types in the following large table. Rows in blue are new or different in some way with respect to original Illustris, while those in green are unchanged.

PartType0 (gas)
Field Full Snaps Mini Snaps Subbox Snaps Dims Units Description
CenterOfMass - N,3 $ckpc/h$ Spatial position of the center of mass, which in general differs from the geometrical center of the Voronoi cell (the offset should be small). Comoving coordinate.
Coordinates N,3 $ckpc/h$ Spatial position within the periodic simulation domain of BoxSize. Comoving coordinate.
Density N $(10^{10} M_\odot/h) / (ckpc/h)^3$ Comoving mass density of cell (calculated as mass/volume).
ElectronAbundance N - Fractional electron number density with respect to the total hydrogen number density, so $n_e = \rm{ElectronAbundance} * n_H$ where $n_H = X_H * \rho / m_p$. Use with caution for star-forming gas (see comment below for NeutralHydrogenAbundance).
EnergyDissipation - - (^) N $(1/a) 10^{10} M_{\odot}/\rm{ckpc} (\rm{km/s})^3$ Shock finder output: the dissipated energy rate (amount of kinetic energy irreversibly transformed into thermal energy). Note units correspond to (Energy/Time). Multiply by $1/a$ to obtain physical units.
GFM_AGNRadiation - N $erg / s / cm^{2} * (4\pi)$ Bolometric intensity (physical units) at the position of this cell arising from the radiation fields of nearby AGN. One should divide by $4\pi$ to obtain the flux at this location, in the sense of $F = L / (4 \pi R^2)$.
GFM_CoolingRate - N $erg\,\,cm^{3} / s$ The instantaneous net cooling rate experienced by this gas cell, in cgs units (e.g. $\Lambda_{\rm net} / n_H^2$).
GFM_Metallicity N - The ratio $M_Z / M_{total}$ where $M_Z$ is the total mass all metal elements (above He). Is NOT in solar units. To convert to solar metallicity, divide by 0.0127 (the primordial solar metallicity).
GFM_Metals - N,10 - Individual abundances of nine species: H, He, C, N, O, Ne, Mg, Si, Fe (in this order). Each is the dimensionless ratio of mass in that species to the total gas cell mass. The tenth entry contains the 'total' of all other (i.e. untracked) metals.
GFM_MetalsTagged - N,6 - Six additional metal-origin tracking fields in this order: SNIa (0), SNII (1), AGB (2), NSNS (3), FeSNIa (4), FeSNII (5). Each keeps track of heavy elements arising from particular processes. Full description below.
GFM_WindDMVelDisp - N $km/s$ Equal to SubfindVelDisp (redundant).
GFM_WindHostHaloMass - N $10^{10} M_{\odot}/h$ Mass of the parent FoF halo of this gas cell (redundant).
InternalEnergy N $(km/s)^2$ Internal (thermal) energy per unit mass for this gas cell. See FAQ for conversion to gas temperature. Use with caution for star-forming gas, as this corresponds to the 'effective' temperature of the equation of state, which is not a physical temperature. Note: this field has "corrected" values, and is generally recommended for all uses, see the data release background for details.
InternalEnergyOld - (!) N $(km/s)^2$ Old internal (thermal) energy per unit mass for this gas cell. See FAQ for conversion to gas temperature. This field holds the original values, and is not recommended for use, see the data release background for details. (!) Note that subboxes do not have corrected values, so the InternalEnergy field for subboxes contains the uncorrected values, and no InternalEnergyOld exists.
Machnumber - - (^) N - Shock finder output: The Mach number (ratio of fluid velocity to sound speed) of the gas cell, zero if no shock is present.
MagneticField - N,3 $(h/a^2)$ $(\rm{UnitPressure})^{1/2}$ The (comoving) magnetic field 3-vector (x,y,z) of this gas cell. Multiply by $h/a^2$ to obtain physical code units, then by $\rm{UnitPressure}^{1/2} = (\rm{UnitMass} / \rm{UnitLength})^{1/2} / \rm{UnitTime}$ $= (10^{10} M_{\odot} / \rm{kpc})^{1/2} * (\rm{km/s}) / \rm{kpc} = 2.60 \times 10^{-6}$ to obtain CGS units (Gauss).
MagneticFieldDivergence - N $(h^3/a^2) (10^{10} M_{\odot})^{1/2} \rm(km/s) (\rm{ckpc})^{-5/2}$ The divergence of the magnetic field in this cell. Units are (area)*MagneticFieldUnits/(volume).
Masses N $10^{10} M_\odot/h$ Gas mass in this cell. Refinement/derefinement attempts to keep this value within a factor of two of the targetGasMass for every cell.
NeutralHydrogenAbundance - N - Fraction of the hydrogen cell mass (or density) in neutral hydrogen, so $n_{H_0} = \rm{NeutralHydrogenAbundance} * n_H$. (So note that $n_{H^+} = n_H - n_{H_0}$). Use with caution for star-forming gas, as the calculation is based on the 'effective' temperature of the equation of state, which is not a physical temperature.
ParticleIDs N - The unique ID (uint64) of this gas cell. Constant for the duration of the simulation. May cease to exist (as gas) in a future snapshot due to conversion into a star/wind particle, accretion into a BH, or a derefinement event.
Potential - N $(km/s)^2 / a$ Gravitational potential energy.
StarFormationRate N $M_\odot / yr$ Instantaneous star formation rate of this gas cell.
SubfindDMDensity - - N $(10^{10} M_\odot/h) / (ckpc/h)^3$ The local total comoving mass density, estimated using the standard cubic-spline SPH kernel over all DM particles within a radius of SubfindHsml.
SubfindDensity - - N $(10^{10} M_\odot/h) / (ckpc/h)^3$ The local total comoving mass density, estimated using the standard cubic-spline SPH kernel over all particles/cells within a radius of SubfindHsml.
SubfindHsml - - N $ckpc/h$ The comoving radius of the sphere centered on this cell enclosing the 64±1 nearest dark matter particles.
SubfindVelDisp - - N $km/s$ The 3D velocity dispersion of all dark matter particles within a radius of SubfindHsml of this cell.
Velocities N,3 $km\sqrt{a}/s$ Spatial velocity. Multiply this value by $\sqrt{a}$ to obtain peculiar velocity.
PartType1 (dm)
Field Full Snaps Mini Snaps Subbox Snaps Dims Units Description
Coordinates N,3 $ckpc/h$ Spatial position within the periodic simulation domain of BoxSize. Comoving coordinate.
ParticleIDs N - The unique ID (uint64) of this DM particle. Constant for the duration of the simulation.
Potential - N $(km/s)^2 / a$ Gravitational potential energy.
SubfindDMDensity - - N $(10^{10} M_\odot/h) / (ckpc/h)^3$ The local total comoving mass density, estimated using the standard cubic-spline SPH kernel over all DM particles within a radius of SubfindHsml.
SubfindDensity - - N $(10^{10} M_\odot/h) / (ckpc/h)^3$ The local total comoving mass density, estimated using the standard cubic-spline SPH kernel over all particles/cells within a radius of SubfindHsml.
SubfindHsml - - N $ckpc/h$ The comoving radius of the sphere centered on this particle enclosing the 64±1 nearest dark matter particles.
SubfindVelDisp - - N $km/s$ The 3D velocity dispersion of all dark matter particles within a radius of SubfindHsml of this particle.
Velocities N,3 $km\sqrt{a}/s$ Spatial velocity. Multiply this value by $\sqrt{a}$ to obtain peculiar velocity.
PartType3 (tracers)
Field Full Snaps Mini Snaps Subbox Snaps Dims Units Description
FluidQuantities (*) - (*) N - Of the various quantities recorded for tracers in Illustris, we now have kept only one, similar to "Last_Star_Time". Therefore, this dataset is now a single number for each tracer, and contains information on the previous presence of the tracer inside a particle of type 4 (either a real star, or wind, particle). If the tracer has never been in a particle of type 4, the value is 0. (i) For tracers that are currently in gas cells or black holes, the range of possible values is [-All.TimeMax, All.TimeMax], as follows: if the tracer was last seen in a 'real' star particle, the value is simply the time it came back to the gas phase, i.e. the possible range of values is [0, All.TimeMax]. If the tracer was last seen in a wind particle, the value is the time it came back to the gas phase, multiplied by (-1), i.e. the possible range of values is [-All.TimeMax, 0]. (ii) For tracers that are currently in a 'real' star particle, the value is fixed at 2*All.TimeMax. (iii) For tracers that are currently in a wind particle, the value equals whatever value they had before joining the wind plus 3*All.TimeMax, i.e. the possible range of values is [2*All.TimeMax, 4*All.TimeMax]. Note (*): field only exists for TNG100, removed in TNG300 and TNG50.
ParentID (**) N - The unique ID (uint64) of the parent of this tracer. Could be a gas cell, star, wind phase cell, or BH. Note (**): TNG100 tracers saved only in the (20) full snapshots! They are saved in all 100 snapshots for TNG300 and TNG50.
TracerID (**) N - The unique ID (uint64) of this tracer. Constant for the duration of the simulation. Note (**): TNG100 tracers saved only in the (20) full snapshots! They are saved in all 100 snapshots for TNG300 and TNG50.
PartType4 (stars / wind particles)
Field Full Snaps Mini Snaps Subbox Snaps Dims Units Description
BirthPos - N,3 $ckpc/h$ Spatial position within the periodic box where this star particle initially formed. Comoving coordinate.
BirthVel - N,3 $km \sqrt{a}/s$ Spatial velocity of the parent star-forming gas cell at the time of formation. The peculiar velocity is obtained by multiplying this value by $a^{1/2}$.
Coordinates N,3 $ckpc/h$ Spatial position within the periodic simulation domain of BoxSize. Comoving coordinate.
GFM_InitialMass N $10^{10} M_\odot/h$ Mass of this star particle when it was formed (will subsequently decrease due to stellar evolution).
GFM_Metallicity N - See entry under PartType0. Inherited from the gas cell spawning/converted into this star, at the time of birth.
GFM_Metals - N,10 - See entry under PartType0. Inherited from the gas cell spawning/converted into this star, at the time of birth.
GFM_MetalsTagged - N,6 - See entry under PartType0. This field is identical for star particles, and note that it is simply inherited at the time of formation from the gas cell from which the star was born. It does not then evolve or change in any way (i.e. no self-enrichment), so these values describe the 'inherited' wind/SN/NSNS material from the gas.
GFM_StellarFormationTime N - The exact time (given as the scalefactor) when this star was formed. Note: The only differentiation between a real star (>0) and a wind phase gas cell (<=0) is the sign of this quantity.
GFM_StellarPhotometrics - N,8 $\rm{mag}$ Stellar magnitudes in eight bands: U, B, V, K, g, r, i, z. In detail, these are: Buser's X filter, where X=U,B3,V (Vega magnitudes), then IR K filter + Palomar 200 IR detectors + atmosphere.57 (Vega), then SDSS Camera X Response Function, airmass = 1.3 (June 2001), where X=g,r,i,z (AB magnitudes). They can be found in the filters.log file in the BC03 package. The details on the four SDSS filters can be found in Stoughton et al. 2002, section 3.2.1.
Masses N $10^{10} M_\odot/h$ Mass of this star or wind phase cell.
ParticleIDs N - The unique ID (uint64) of this star/wind cell. Constant for the duration of the simulation.
Potential - N $(km/s)^2 / a$ Gravitational potential energy.
StellarHsml - N $\rm{ckpc/h}$ The comoving radius of the sphere centered on this particle enclosing the 32±1 nearest particles of this same type. Useful for visualization.
SubfindDMDensity - - N $(10^{10} M_\odot/h) / (ckpc/h)^3$ The local total comoving mass density, estimated using the standard cubic-spline SPH kernel over all DM particles within a radius of SubfindHsml.
SubfindDensity - - N $(10^{10} M_\odot/h) / (ckpc/h)^3$ The local total comoving mass density, estimated using the standard cubic-spline SPH kernel over all particles/cells within a radius of SubfindHsml.
SubfindHsml - - N $ckpc/h$ The comoving radius of the sphere centered on this star particle enclosing the 64±1 nearest dark matter particles.
SubfindVelDisp - - N $km/s$ The 3D velocity dispersion of all dark matter particles within a radius of SubfindHsml of this particle.
Velocities N,3 $km\sqrt{a}/s$ Spatial velocity. Multiply this value by $\sqrt{a}$ to obtain peculiar velocity.
PartType5 (black holes)
Field Full Snaps Mini Snaps Subbox Snaps Dims Units Description
BH_BPressure N $(h^4/a^4) 10^{10} M_{\odot} (\rm{km/s})^2/\rm{ckpc}^3$ The mean magnetic pressure of gas cells within a radius of BH_Hsml, kernel and volume weighted (kernel weight clipped at a maximum of wt=2.5). Units are those of MagneticField$^{2}$. Note: is still in Heavyside-Lorentz, not Gauss, so multiply by $4\pi$ to be unit consistent with MagneticField.
BH_CumEgyInjection_QM N $10^{10} M_\odot/h (ckpc/h)^2 / (0.978Gyr/h)^2$ Cumulative amount of thermal AGN feedback energy injected into surrounding gas in the high accretion-state (quasar) mode, total over the entire lifetime of this blackhole. Field summed during BH-BH merger.
BH_CumEgyInjection_RM N $10^{10} M_\odot/h (ckpc/h)^2 / (0.978Gyr/h)^2$ Cumulative amount of kinetic AGN feedback energy injected into surrounding gas in the low accretion-state (wind) mode, total over the entire lifetime of this blackhole. Field summed during BH-BH merger.
BH_CumMassGrowth_QM N $(10^{10} M_\odot/h)$ Cumulative mass accreted onto the BH in the high accretion-state (quasar) mode, total over the entire lifetime of this blackhole. Field summed during BH-BH merger.
BH_CumMassGrowth_RM N $(10^{10} M_\odot/h)$ Cumulative mass accreted onto the BH in the low accretion-state (kinetic wind) mode, total over the entire lifetime of this blackhole. Field summed during BH-BH merger.
BH_Density N $(10^{10} M_\odot/h) / (ckpc/h)^3$ Local comoving gas density averaged over the nearest neighbors of the BH.
BH_HostHaloMass N $10^{10} M_\odot/h$ Mass of the parent FoF halo of this blackhole.
BH_Hsml N $ckpc/h$ The comoving radius of the sphere enclosing the 64,128,256 (for TNG100-3, -2, and -1 resolutions) ±4 nearest-neighbor gas cells around the BH.
BH_Mass N $10^{10} M_\odot/h$ Actual mass of the BH; does not include gas reservoir. Monotonically increases with time according to the accretion prescription, starting from the seed mass.
BH_Mdot N $(10^{10} M_\odot/h) / (0.978Gyr/h)$ The mass accretion rate onto the black hole, instantaneous.
BH_MdotBondi N $(10^{10} M_\odot/h) / (0.978Gyr/h)$ Current estimate of the Bondi accretion rate for this BH. Calculated as $\dot {M}_{\rm bondi}=(\alpha 4\pi G^{2}M_{BH}^{2}\rho )/(c_{s}^{2}+v_{BH}^{2})^{3/2}$ with $\alpha =1$ and $v_{BH}=0$ for TNG.
BH_MdotEddington N $(10^{10} M_\odot/h) / (0.978Gyr/h)$ Current estimate of the Eddington accretion rate for this BH. Calculated as $\dot {M}_{\rm edd}=(4\pi GM_{BH}m_{p})/(\epsilon _{r}\sigma _{T}c)$ where $\epsilon_{r}=0.2$ is the radiative efficieny parameter.
BH_Pressure N $(10^{10} M_\odot/h) / (ckpc/h) / (0.978Gyr/h)^2$ Physical gas pressure (in comoving units) near the BH, defined as $(\gamma-1) \rho u$, where $\rho$ is the local comoving gas density (BH_Density, as above) $u$ is BH_U (defined below). If this pressure is lower than the reference gas pressure, $P_{ref}$, the BH accretion rate is lowered by $(P_{ext}/P_{ref})^2$.
BH_Progs N - Total number of BHs that have merged into this BH.
BH_U N $(km/s)^2$ Thermal energy per unit mass in quasar-heated bubbles near the BH. Used to define the BH_Pressure. Not to be confused with the "radio mode" bubbles injected via the unified feedback model.
Coordinates N,3 $ckpc/h$ Spatial position within the periodic simulation domain of BoxSize. Comoving coordinate.
Masses N $10^{10} M_\odot/h$ Total mass of the black hole particle. Includes the gas reservoir from which accretion is tracked onto the actual BH mass (see BH_Mass).
ParticleIDs N - The unique ID (uint64) of this black hole. Constant for the duration of the simulation. May cease to exist in a future snapshot due to a BH merger.
Potential N $(km/s)^2 / a$ Gravitational potential at the location of the BH.
SubfindDMDensity - - N $(10^{10} M_\odot/h) / (ckpc/h)^3$ The local total comoving DM mass density, estimated using the standard cubic-spline SPH kernel over all DM particles within a radius of SubfindHsml.
SubfindDensity - - N $(10^{10} M_\odot/h) / (ckpc/h)^3$ The local total comoving mass density, estimated using the standard cubic-spline SPH kernel over all particles/cells within a radius of SubfindHsml.
SubfindHsml - - N $ckpc/h$ The comoving radius of the sphere centered on this blackhole particle enclosing the 64±1 nearest dark matter particles.
SubfindVelDisp - - N $km/s$ The 3D velocity dispersion of all dark matter particles within a radius of SubfindHsml of this particle.
Velocities N,3 $km\sqrt{a}/s$ Spatial velocity. Multiply this value by $\sqrt{a}$ to obtain peculiar velocity.

The general unit system is ${\rm kpc}/h$ for lengths, $10^{10} {\rm M}_\odot/h$ for masses, ${\rm km/s}$ for velocities. The frequently occurring $(10^{10} {\rm M}_\odot/h) / (0.978 {\rm Gyr}/h)$ represents mass-over-time in this unit system, and multiplying by 10.22 converts to ${\rm M}_\odot/{\rm yr}$. Comoving quantities can be converted in the corresponding physical ones by multiplying for the appropriate power of the scale factor $a$. For instance, to convert a length in physical units it is sufficient to multiply it by $a$, volumes need a factor $a^3$, densities $a^{-3}$ and so on. Note that at redshift $z=0$ the scale factor is $a=1$, so that the numerical values of comoving quantities are the same as their physical counterparts.

#### Tagged Metals

(*) The units of all the entries of GFM_MetalsTagged, except for NSNS, are the same as GFM_Metals: dimensionless mass ratios. If you sum up all the elements of GFM_Metals heavier than Helium, you recover the sum of the three tags SNIa+SNII+AGB. Likewise, the Fe entry of GFM_Metals roughly equals the sum of FeSNIa+FeSNII, modulo the small amount of iron consumed (i.e. negative contribution) by AGB winds. The particular fields are:

• SNIa (0): The total metals ejected by Type Ia supernovae.
• SNII (1): The total metals ejected by Type II supernovae.
• AGB (2): the total metals ejected by stellar winds, which is dominated by AGB stars.
• NSNS (3): the total mass ejected from NS-NS merger events, which are modeled stochastically (i.e. no fractional events) with a DTD scheme similar to that used for SNIa, except with a different $\tau$ value. Note that the units of NSNS are arbitrary. To obtain physical values in units of solar masses, this field must be multiplied by (MyPreferred_NSNS_MassPerEvent/NSNS_MassPerEvent), where MyPreferred_NSNS_MassPerEvent is the amount of mass ejected per NS-NS merger preferred for analysis (e.g. Shen+ 2015 uses here a value of $0.05 M_{\odot}$), and NSNS_MassPerEvent is the value we have set for the simulation, which varies by run. In particular, it is 0.05 for TNG100* and 5000.0 for TNG300* and TNG50*.
• FeSNIa (4): The total iron ejected by Type Ia supernovae alone.
• FeSNII (5): The total iron ejected by Type II supernovae alone.

(^) Although the two shock finder fields exist in subboxes, they are not updated for each subbox output, but only occasionally, so in general one should NOT use these two fields in subbox snapshots.

#### Subboxes

Separate "subbox" cutouts exist for each baryonic run. These are spatial cutouts of fixed comoving size and fixed comoving coordinates, and the primary benefit is that their time resolution is significantly better than that of the main snapshots. This may be useful for some types of analysis or particular science questions, or for making movies. There are two subboxes for TNG100 (corresponding to the original Illustris subboxes #0 and #2, the latter increased in size), and three subboxes for TNG50 and TNG300. Two notes of caution: first, the time spacing of the subboxes is not uniform in scale factor or redshift, but scales with the time integration hierarchy of the simulation, and is thus variable, with some discrete factor of two jumps at several points during the simulations. Second, the subboxes, unlike the full box, are not periodic.

Run Number of
Subbox Snapshots
Chunks
per Snap
Time Resolution
(at z=6)
(at z=2) (at z=0)
TNG100-324317 ~4 Myr ~7 Myr ~19 Myr
TNG100-243807 ~2 Myr ~4 Myr ~10 Myr
TNG100-1790828 ~1 Myr ~1.5 Myr ~2.5 Myr
TNG300-320506 ~6 Myr ~11 Myr ~8 Myr
TNG300-2304512 ~3 Myr ~6 Myr ~4 Myr
TNG300-1244948 ~1.5 Myr ~4 Myr ~6 Myr
TNG50-4233311 ~7 Myr ~6 Myr ~8 Myr
TNG50-3400611 ~2 Myr ~3 Myr ~4 Myr
TNG50-2189534 ~3 Myr ~6 Myr ~8 Myr
TNG50-1~360068 ~3 Myr ~2 Myr ~2 Myr

The subboxes sample different areas of the large boxes, roughly described by the environment column in the following table. The particle fields are all identical to the main snapshots. However, the ordering differs. In particular, particles/cells in the subboxes are not ordered according to their group membership, as no group catalogs are available for these cutouts.

Subbox # Environment $\Omega_m^{sub}$ XYZ Center BoxSize Volume Fraction
TNG100 Subbox-0 Crowded, including a $5 \times 10^{13} {\rm M}_\odot$ halo ~1.5 (9000, 17000, 63000) 7.5 ${\rm cMpc}/h$ 0.1%
TNG100 Subbox-1 Less crowded, including several $\gt 10^{12} {\rm M}_\odot$ halos ~0.3 (37000, 43500, 67500) 7.5 ${\rm cMpc}/h$ 0.1%
TNG300 Subbox-0 Most massive cluster (~$2 \times 10^{15} M_{\odot}$), merging at z=0 - (44, 49, 148) * 1000 15 ${\rm cMpc}/h$ 0.04%
TNG300 Subbox-1 Crowded, above average # of halos above $10^{13} M_{\odot}$ at z=1 (many groups) - (20, 175, 15) * 1000 15 ${\rm cMpc}/h$ 0.04%
TNG300 Subbox-2 Semi-underdense, one local group analog at z=0 - (169, 97.9, 138) * 1000 10 ${\rm cMpc}/h$ 0.01%
TNG50 Subbox-0 Somewhat-crowded (~6 MWs) ~1 (26000, 10000, 26500) 4.0 ${\rm cMpc}/h$ 0.15%
TNG50 Subbox-1 Low-density (many isolated dwarfs, no halos above $5 \times 10^{10}$ M$_{\odot}$ <1 (12500, 10000, 22500) 4.0 ${\rm cMpc}/h$ 0.15%
TNG50 Subbox-2 Most massive cluster ($2 \times 10^{14}$ M$_{\odot}$ at z=0) >1 (7300, 24500, 21500) 5.0 ${\rm cMpc}/h$ 0.3%

### 2. Group Catalogs

There is one group catalog associated with each snapshot, which includes both FoF and Subfind objects. The group files are split into a small number of sub-files, just as with the raw snapshots. In TNG, these files are called "fof_subhalo_tab_*", whereas in original Illustris they were called "groups_*" (they are otherwise essentially identical). Every HDF5 group catalog contains the following groups: Header, Group, Subhalo. The IDs of the member particles of each group/subgroup are not stored in the group catalog files. Rather, particles/cells in the snapshot files are ordered according to group membership.

In order to reduce confusion, we adopt the following terminology when referring to different types of objects:

• "Group", "FoF Group", and "FoF Halo" all refer to halos.
• "Subgroup", "Subhalo", and "Subfind Group" all refer to subhalos.
• The first (most massive) subgroup of each halo is the "Primary Subgroup" or "Central Subgroup".
• All other following subgroups within the same halo are "Secondary Subgroups", or "Satellite Subgroups".

#### FoF Halos

The Group fields are derived with a standard friends-of-friends (FoF) algorithm with linking length $b=0.2$. The FoF algorithm is run on the dark matter particles, and the other types (gas, stars, BHs) are attached to the same groups as their nearest DM particle. The fields for the FoF halo catalog are described in the following table (all fields are float32 unless otherwise specified):

Field DataType Dimensions Units Description
GroupBHMass float32 N $10^{10} M_\odot / h$ Sum of the BH_Mass field of all blackholes (type 5) in this group.
GroupBHMdot float32 N $(10^{10} M_\odot/h) / (0.978Gyr/h)$ Sum of the BH_Mdot field of all blackholes (type 5) in this group.
GroupCM float32 N,3 $ckpc/h$ Center of mass of the group, computed as the sum of the mass weighted relative coordinates of all particles/cells in the group, of all types. Comoving coordinate. (Available only for the Illustris-3 run)
GroupFirstSub int32 N - Index into the Subhalo table of the first/primary/most massive Subfind group within this FoF group. Note: This value is signed (or should be interpreted as signed)! In this case, a value of -1 indicates that this FoF group has no subhalos.
GroupGasMetalFractions float32 N,10 - Individual abundances: H, He, C, N, O, Ne, Mg, Si, Fe, total (in this order). Each is the dimensionless ratio of the total mass in that species divided by the total gas mass, for all gas cells in the group. The tenth entry contains the 'total' of all other (i.e. untracked) metals.
GroupGasMetallicity float32 N - Mass-weighted average metallicity (Mz/Mtot, where Z = any element above He) of all gas cells in this FOF group.
GroupLen int32 N - Integer counter of the total number of particles/cells of all types in this group.
GroupLenType int32 N,6 - Integer counter of the total number of particles/cells, split into the six different types, in this group. Note: Wind phase cells are counted as stars (type 4) for GroupLenType.
GroupMass float32 N $10^{10} M_\odot / h$ Sum of the individual masses of every particle/cell, of all types, in this group.
GroupMassType float32 N,6 $10^{10} M_\odot / h$ Sum of the individual masses of every particle/cell, split into the six different types, in this group. Note: Wind phase cells are counted as gas (type 0) for GroupMassType.
GroupNsubs int32 N - Count of the total number of Subfind groups within this FoF group.
GroupPos float32 N,3 $ckpc/h$ Spatial position within the periodic box (of the particle with the minimum gravitational potential energy). Comoving coordinate.
GroupSFR float32 N $M_\odot / yr$ Sum of the individual star formation rates of all gas cells in this group.
GroupStarMetalFractions float32 N,10 - Individual abundances: H, He, C, N, O, Ne, Mg, Si, Fe, total (in this order). Each is the dimensionless ratio of the total mass in that species divided by the total stellar mass, for all stars in the group. The tenth entry contains the 'total' of all other (i.e. untracked) metals.
GroupStarMetallicity float32 N - Mass-weighted average metallicity (Mz/Mtot, where Z = any element above He) of all star particles in this FOF group.
GroupVel float32 N,3 $km/s/a$ Velocity of the group, computed as the sum of the mass weighted velocities of all particles/cells in this group, of all types. The peculiar velocity is obtained by multiplying this value by $1/a.$
GroupWindMass float32 N $10^{10} M_\odot / h$ Sum of the individual masses of all wind phase gas cells (type 4, BirthTime <= 0) in this group.
Group_M_Crit200 float32 N $10^{10} M_\odot / h$ Total Mass of this group enclosed in a sphere whose mean density is 200 times the critical density of the Universe, at the time the halo is considered.
Group_M_Crit500 float32 N $10^{10} M_\odot / h$ Total Mass of this group enclosed in a sphere whose mean density is 500 times the critical density of the Universe, at the time the halo is considered.
Group_M_Mean200 float32 N $10^{10} M_\odot / h$ Total Mass of this group enclosed in a sphere whose mean density is 200 times the mean density of the Universe, at the time the halo is considered.
Group_M_TopHat200 float32 N $10^{10} M_\odot / h$ Total Mass of this group enclosed in a sphere whose mean density is $\Delta_c$ times the critical density' of the Universe, at the time the halo is considered. $\Delta_c$ derives from the solution of the collapse of a spherical top-hat perturbation (fitting formula from Bryan+ 1998). The subscript 200 can be ignored.
Group_R_Crit200 float32 N $ckpc/h$ Comoving Radius of a sphere centered at the GroupPos of this Group whose mean density is 200 times the critical density of the Universe, at the time the halo is considered.
Group_R_Crit500 float32 N $ckpc/h$ Comoving Radius of a sphere centered at the GroupPos of this Group whose mean density is 500 times the critical density of the Universe, at the time the halo is considered.
Group_R_Mean200 float32 N $ckpc/h$ Comoving Radius of a sphere centered at the GroupPos of this Group whose mean density is 200 times the mean density of the Universe, at the time the halo is considered.
Group_R_TopHat200 float32 N $ckpc/h$ Comoving Radius of a sphere centered at the GroupPos of this Group whose mean density is $\Delta_c$ times the critical density of the Universe, at the time the halo is considered.

#### Subfind Subhalos (Galaxies)

The Subhalo fields are derived with the Subfind algorithm, with modifications to add additional baryonic properties to each subhalo entry. Descriptions of all fields in this subhalo catalog are given in the following table. Note that for all mass calculations by type, wind phase cells are counted as gas.

Field DataType Dimensions Units Description
SubhaloFlag int16 N - Flag field indicating suitability of this subhalo for certain types of analysis. If zero, this subhalo should generally be excluded, and is not thought to be of cosmological origin. That is, it may have formed within an existing halo, or is possibly a baryonic fragment of a disk or other galactic structure identified by Subfind. If one, this subhalo should be considered a 'galaxy' or 'satellite' of cosmological origin. (Note: always true for centrals). This field is only present for baryonic runs, and is absent for dark matter only runs. See the data release background for details.
SubhaloBHMass float32 N $10^{10} M_\odot/h$ Sum of the masses of all blackholes in this subhalo.
SubhaloBHMdot float32 N $(10^{10} M_\odot/h) / (0.978Gyr/h)$ Sum of the instantaneous accretion rates $\dot{M}$ of all blackholes in this subhalo.
SubhaloBfldDisk (*) float32 N $(h/a^2)$ $(\rm{UnitPressure})^{1/2}$ The square root of the volume weighted value of $B^{2}$ for all gas cells within the canonical two times the stellar half mass radius. This value gives a magnetic field strength which would have the same amount of mean magnetic energy as the galaxy cells. (*) Only available for full snapshots.
SubhaloBfldHalo (*) float32 N $(h/a^2)$ $(\rm{UnitPressure})^{1/2}$ The square root of the volume weighted value of $B^{2}$ for all gas cells in the subhalo. This value gives a magnetic field strength which would have the same amount of mean magnetic energy as the subhalo cells. (*) Only available for full snapshots.
SubhaloCM float32 N,3 $ckpc/h$ Comoving center of mass of the Subhalo, computed as the sum of the mass weighted relative coordinates of all particles/cells in the Subhalo, of all types.
SubhaloGasMetalFractions float32 N,10 - Individual abundances: H, He, C, N, O, Ne, Mg, Si, Fe, total (in this order). Each is the dimensionless ratio of the total mass in that species divided by the total gas mass, both restricted to gas cells within twice the stellar half mass radius. The tenth entry contains the 'total' of all other (i.e. untracked) metals.
SubhaloGasMetalFractionsHalfRad float32 N,10 - Same as SubhaloGasMetalFractions, but restricted to cells within the stellar half mass radius.
SubhaloGasMetalFractionsMaxRad float32 N,10 - Same as SubhaloGasMetalFractions, but restricted to cells within the radius of $V_{\rm max}$.
SubhaloGasMetalFractionsSfr float32 N,10 - Same as SubhaloGasMetalFractions, but restricted to cells which are star-forming.
SubhaloGasMetalFractionsSfrWeighted float32 N,10 - Same as SubhaloGasMetalFractionsSfr, but weighted by the cell star-formation rate rather than the cell mass.
SubhaloGasMetallicity float32 N - Mass-weighted average metallicity (Mz/Mtot, where Z = any element above He) of the gas cells bound to this Subhalo, but restricted to cells within twice the stellar half mass radius.
SubhaloGasMetallicityHalfRad float32 N - Same as SubhaloGasMetallicity, but restricted to cells within the stellar half mass radius.
SubhaloGasMetallicityMaxRad float32 N - Same as SubhaloGasMetallicity, but restricted to cells within the radius of $V_{max}$.
SubhaloGasMetallicitySfr float32 N - Mass-weighted average metallicity (Mz/Mtot, where Z = any element above He) of the gas cells bound to this Subhalo, but restricted to cells which are star forming.
SubhaloGasMetallicitySfrWeighted float32 N - Same as SubhaloGasMetallicitySfr, but weighted by the cell star-formation rate rather than the cell mass.
SubhaloGrNr int32 N - Index into the Group table of the FOF host/parent of this Subhalo.
SubhaloHalfmassRad float32 N $ckpc/h$ Comoving radius containing half of the total mass (SubhaloMass) of this Subhalo.
SubhaloHalfmassRadType float32 N,6 $ckpc/h$ Comoving radius containing half of the mass of this Subhalo split by Type (SubhaloMassType).
SubhaloIDMostbound int64 N - The ID of the particle with the smallest binding energy (could be any type).
SubhaloLen int32 N - Total number of member particle/cells in this Subhalo, of all types.
SubhaloLenType int32 N,6 - Total number of member particle/cells in this Subhalo, separated by type.
SubhaloMass float32 N $10^{10} M_\odot/h$ Total mass of all member particle/cells which are bound to this Subhalo, of all types. Particle/cells bound to subhaloes of this Subhalo are NOT accounted for.
SubhaloMassInHalfRad float32 N $10^{10} M_\odot/h$ Sum of masses of all particles/cells within the stellar half mass radius.
SubhaloMassInHalfRadType float32 N,6 $10^{10} M_\odot/h$ Sum of masses of all particles/cells (split by type) within the stellar half mass radius.
SubhaloMassInMaxRad float32 N $10^{10} M_\odot/h$ Sum of masses of all particles/cells within the radius of $V_{max}$.
SubhaloMassInMaxRadType float32 N,6 $10^{10} M_\odot/h$ Sum of masses of all particles/cells (split by type) within the radius of $V_{max}$.
SubhaloMassInRad float32 N $10^{10} M_\odot/h$ Sum of masses of all particles/cells within twice the stellar half mass radius.
SubhaloMassInRadType float32 N,6 $10^{10} M_\odot/h$ Sum of masses of all particles/cells (split by type) within twice the stellar half mass radius.
SubhaloMassType float32 N,6 $10^{10} M_\odot/h$ Total mass of all member particle/cells which are bound to this Subhalo, separated by type. Particle/cells bound to subhaloes of this Subhalo are NOT accounted for. Note: Wind phase cells are counted as gas (type 0) for SubhaloMassType.
SubhaloParent int32 N - Index back into this same Subhalo table of the unique Subfind host/parent of this Subhalo. This index is local to the group (i.e. 2 indicates the third most massive subhalo of the parent halo of this subhalo, not the third most massive of the whole snapshot). The values are often zero for all subhalos of a group, indicating that there is no resolved hierarchical structure in that group, beyond the primary subhalo having as direct children all of the secondary subhalos.
SubhaloPos float32 N,3 $ckpc/h$ Spatial position within the periodic box (of the particle with the minium gravitational potential energy). Comoving coordinate.
SubhaloSFR float32 N $M_\odot / yr$ Sum of the individual star formation rates of all gas cells in this subhalo.
SubhaloSFRinHalfRad float32 N $M_\odot / yr$ Same as SubhaloSFR, but restricted to cells within the stellar half mass radius.
SubhaloSFRinMaxRad float32 N $M_\odot / yr$ Same as SubhaloSFR, but restricted to cells within the radius of $V_{max}$.
SubhaloSFRinRad float32 N $M_\odot / yr$ Same as SubhaloSFR, but restricted to cells within twice the stellar half mass radius.
SubhaloSpin float32 N,3 $(kpc/h) (km/s)$ Total spin per axis, computed for each as the mass weighted sum of the relative coordinate times relative velocity of all member particles/cells.
SubhaloStarMetalFractions float32 N,10 - Individual abundances: H, He, C, N, O, Ne, Mg, Si, Fe, total (in this order). Each is the dimensionless ratio of the total mass in that species divided by the total stellar mass, both restricted to stars within twice the stellar half mass radius. The tenth entry contains the 'total' of all other (i.e. untracked) metals.
SubhaloStarMetalFractionsHalfRad float32 N,10 - Same as SubhaloStarMetalFractions, but restricted to stars within the stellar half mass radius.
SubhaloStarMetalFractionsMaxRad float32 N,10 - Same as SubhaloStarMetalFractions, but restricted to stars within the radius of $V_{\rm max}$.
SubhaloStarMetallicity float32 N - Mass-weighted average metallicity (Mz/Mtot, where Z = any element above He) of the star particles bound to this Subhalo, but restricted to stars within twice the stellar half mass radius.
SubhaloStarMetallicityHalfRad float32 N - Same as SubhaloStarMetallicity, but restricted to stars within the stellar half mass radius.
SubhaloStarMetallicityMaxRad float32 N - Same as SubhaloStarMetallicity, but restricted to stars within the radius of $V_{max}$.
SubhaloStellarPhotometrics float32 N,8 $\rm{mag}$ Eight bands: U, B, V, K, g, r, i, z. Magnitudes based on the summed-up luminosities of all the stellar particles of the group. For details on the bands, see snapshot table for stars.
SubhaloStellarPhotometricsMassInRad float32 N $10^{10} M_\odot/h$ Sum of the mass of the member stellar particles, but restricted to stars within the radius SubhaloStellarPhotometricsRad.
SubhaloStellarPhotometricsRad float32 N $ckpc/h$ Radius at which the surface brightness profile (computed from all member stellar particles) drops below the limit of 20.7 mag arcsec$^{-2}$ in the K band (in comoving units).
SubhaloVel float32 N,3 $km/s$ Peculiar velocity of the group, computed as the sum of the mass weighted velocities of all particles/cells in this group, of all types. No unit conversion is needed.
SubhaloVelDisp float32 N $km/s$ One-dimensional velocity dispersion of all the member particles/cells (the 3D dispersion divided by $\sqrt{3}$).
SubhaloVmax float32 N $km/s$ Maximum value of the spherically-averaged rotation curve.
SubhaloVmaxRad float32 N $ckpc/h$ Comoving radius of rotation curve maximum (where $V_{max}$ is achieved).
SubhaloWindMass float32 N $10^{10} M_\odot/h$ Sum of masses of all wind-phase cells in this subhalo (with Type==4 and BirthTime<=0).

Note: all quantities restricted to some fraction (0.5, 1.0, or 2.0) of the stellar half mass radius are by definition zero if there are no stars in subhalo.

The following table describes the Header group of each groupcat file:

Field Type Description
Ngroups_ThisFile int Number of groups within this file chunk.
Nsubgroups_ThisFile int Number of subgroups within this file chunk.
Ngroups_Total int Total number of groups for this snapshot.
Nsubgroups_Total int Total number of subgroups for this snapshot.
NumFiles int Total number of file chunks the group catalog is split between.
Time float Scalefactor of the snapshot corresponding to this group catalog.
Redshift float Redshift of the snapshot corresponding to this group catalog.

#### Offsets

The "offsets" files are simply helpers which facilitate rapid loading of data. If you want to use the helper scripts for working with the actual data files (snapshots or group catalogs) on your local machine, then it is required that you download the offset file(s) for the snapshot(s) you are interested in working with.

If you only work with the web-based tools and API (e.g. only analyze particle-level data using cutouts), then downloading offset files is not required.

Note that in Illustris, offsets were embedded inside the group catalog files for convenience. In TNG however, we have kept offsets as a separate HDF5 file (one per snapshot), which need to be downloaded as required. Most simply, you can think of offsets as describing where in the group catalog files to find a specific halo/subhalo, and where in the snapshot files to find the start of the particles of a given halo/subhalo.

The following table describes the fields in each offsets file.

Field Dimensions Description
FileOffsets/SnapByType [$6, N_{\rm c}$] int array The offset table (by type) for the snapshot files, giving the first particle index in each snap file chunk. Determines which files(s) a given offset+length will cover. A two-dimensional array, where the element $(i,j)$ equals the cumulative sum (i.e. offset) of particles of type $i$ in all snapshot file chunks prior to $j$.
FileOffsets/Group [$N_{\rm c}$] int array The offset table for groups in the group catalog files. A one-dimensional array, where the $i^{th}$ element equals the first group number in the $i^{th}$ groupcat file chunk.
FileOffsets/Subhalo [$N_{\rm c}$] int array The offset table for subhalos in the group catalog files. A one-dimensional array, where the $i^{th}$ element equals the first subgroup number in the $i^{th}$ groupcat file chunk.
FileOffsets/SubLink [$N_{\rm c}$] int array The offset table for trees in the SubLink files. A one-dimensional array, where the $i^{th}$ element equals the first tree number in the $i^{th}$ SubLink file chunk.
Group/SnapByType Ngroups_Total,6 The offset table for a given group number (by type), into the snapshot files. That is, the global particle index (across all snap file chunks) of the first particle of this group. A two-dimensional array, where the element $(i,j)$ equals the cumulative sum (i.e. offset) of particles of type $i$ in all groups prior to group number $j$.
Subhalo/SnapByType Nsubgroups_Total,6 The offset table for a given subhalo number (by type), into the snapshot files. That is, the global particle index (across all snap file chunks) of the first particle of this subhalo. A two-dimensional array, where the element $(i,j)$ equals the cumulative sum (i.e. offset) of particles of type $i$ in all subhalos prior to subhalo number $j$.
Subhalo/LHaloTree/File Nsubgroups_Total The LHaloTree file number with the tree which contains this subhalo.
Subhalo/LHaloTree/Num Nsubgroups_Total The number of the tree within the above file within which this subhalo is located (e.g. TreeX).
Subhalo/LHaloTree/Index Nsubgroups_Total The LHaloTree index within the above tree dataset at which this subhalo is located.
Subhalo/Sublink/RowNum Nsubgroups_Total The SubLink global index of the location of this subhalo.
Subhalo/Sublink/LastProgenitorID Nsubgroups_Total The SubLink ID of the last progenitor of this tree (all the subhalos contained in the tree rooted in this subhalo are the ones with IDs between SubhaloID and LastProgenitorID).

#### The "simulation.hdf5" File

Each run has a single file available called simulation.hdf5 which is purely optional, for convenience, and not required by any of the helper scripts or examples. Its purpose is to encapsulate all data of an entire simulation into a single file. They can be downloaded on each simulation page.

To accomplish this, we make advantage of a new feature of the HDF5 library called "virtual datasets". You can think of a virtual dataset as a collection of symbolic links to one or more datasets in other HDF5 file(s), where these symlinks can refer to subsets of a dataset, in either the source or target of the link. The simulation.hdf5 is thus a large collection of "links", which refer to other files which actually contain data. In order to use it, you must therefore also download the necessary files (e.g. of snapshots, group catalogs, or supplementary data catalogs).

What does it let us do? First of all, no more file chunks! The fact that a snapshot or group catalog is split over multiple files is no longer relevant. Loading becomes very simple:

with h5py.File('simulation.hdf5','r') as f:
gas_cell_mass = f['/Snapshots/99/PartType0/Masses'][()]


where gas_cell_mass then contains the masses of every gas cell in the entire z=0 snapshot, while subhalo_size_stars contains the stellar half mass radii of all the subhalos in the z=0 group catalog. The simulation.hdf5 also makes loading the particles of a given halo or subhalo trivial:

halo_id = 400
part_type = 1

with h5py.File('simulation.hdf5','r') as f:
start = f['/Offsets/99/Group/SnapByType'][halo_id, part_type]
length = f['/Groups/99/Group/GroupLenType'][halo_id, part_type]

dm_positions = f['/Snapshots/99/PartType1/Coordinates'][start:start+length,:]


where dm_positions would then contain the dark matter coordinates of every DM particle belonging to halo index 400 of the given simulation.

Finally, supplementary data catalogs (either those we provide, or similar computations you have run yourself) can be virtually inserted at any time as datasets in snapshots or group catalogs. This provides a nice, clean way to organize post-processing computations which result in value-added values for halos, subhalos, or individual particles/cells. You can then load such catalogs with the same scripts (and same syntax) as 'original' snapshot/group catalog fields.

There are two requirements to use a simulation.hdf5 file:

• Actual data files must be organized exactly as suggested and described in the example scripts tutorial (i.e., an "output" directory containing a "snapdir_099" subdirectory and a "group_099" subdirectory, along with a "postprocessing" directory containing, among others, an "offsets" subdirectory).
• HDF5 virtual datasets are a new feature, only supported by HDF5 version 1.10.x and later. This is not presently the default version installed on most clusters, which still use 1.8.x. You may have to install a newer version yourself, or request that your system administrator do so. Note! Files created with advanced features of the new HDF5 library series are not backwards compatible. The old 1.8.x series of HDF5 reaches end of life in 2019, so it is a good idea regardless to migrate. In Python, you will also need a fairly new version of h5py (e.g. 2.9.x).

### 4. Merger Trees

Merger trees have been created for the various Illustris simulations using SubLink (Rodriguez-Gomez+ 2015) and LHaloTree (Springel+ 2005). The LHaloTree are essentially identical to the primary trees of the Millennium and Aquarius simulations, but in HDF5 format. Merger tree formats in TNG are identical to Illustris, with additional fields from the group catalogs also present. In the population average sense the different merger trees give similar results. In more detail, the exact merger history or mass assembly history for any given halo may differ. For any given science goal, one type of tree may be more or less useful, and users are free to use whichever they prefer. These codes are all included in the Sussing Merger Trees comparison project (Srisawat+ 2013).

The following figure shows a schematic of the structure of both the SubLink and LHaloTree merger trees. It is not necessary to understand the complete details of the trees to practically use them. In particular, the only critical links are the 'descendant' (black), 'first progenitor' (green), and 'next progenitor' (red) associations. These are shown for all tree nodes in the diagram. For their exact definitions, see the tables below. Walking back in time following along the main (most massive) progenitor branch consists of following the first progenitor links until they end (value equals -1). Similarly, walking forward in time along the descendants branch consists of following the descendant links until they end (value equals -1), which typically occurs at $z=0$. The full progenitor history, and not just the main branch, requires following both the first and next progenitor links. In this way the user can identify all subhalos at a previous snapshot which have a common descendant. Examples of walking the tree are provided in the example scripts.

Caption. Schematic diagram of the merger tree structure for both SubLink and LHaloTree. Both algorithms connect subhalos across different snapshots in the simulation. Rows indicate discrete snapshots, with time increasing downwards towards redshift zero (the horizontal axis is arbitrary). Green circles represent subhalos (the nodes of the merger tree), while beige boxes indicate the grouping of the subhalos into their parent FoF groups. The most important links are for the descendant (black), first progenitor (green), and next progenitor (red), which are shown for all subhalos. The root descendant (purple), last progenitor (blue), and main leaf progenitor (orange) links exist only for the SubLink trees, and for simplicity these last three link types are shown only for subhalos 5, 7, and 19 (darker striped circles).

The number inside each circle from the figure is the unique ID (within the whole simulation) of the corresponding subhalo, which is assigned in a depth-first fashion. Numbering also indicates the on-disk storage ordering for the SubLink trees, which adopt the approach of Lemson+ (2006). For example, the main progenitor branch (from 5-7 in the example) and the full progenitor tree (from 5-13 in the example) are both contiguous subsets of each merger tree field, whose location and size can be calculated using these links. The ordering within a single tree in the LHaloTree is not guaranteed to follow this scheme.

The 'root descendant' (purple), 'last progenitor' (blue), and 'main leaf progenitor' (orange) links exist only for the SubLink trees. For simplicity, these last three link types are shown only for nodes 5, 7, and 19 (darker striped circles). Using these links is optional, but allows efficient extraction of main progenitor branches, subtrees (i.e., the set containing a subhalo and "all" its progenitors), "forward" descendant branches, and other subsets of the tree. For their full definitions, see the following table.

Each subhalo spans a "subtree" consisting of the subhalo itself and all its progenitors. As an example, the subhalos belonging to the subtree of subhalo 5 are shown in darker green in the figure. Other subhalos not belonging to this subtree are shown in lighter green, and their links are indicated with dashed arrows. In the SubLink trees, the subtree of any subhalo can be extracted easily using the 'last progenitor' pointer. As shown in the figure, since subhalo 13 is the 'last progenitor' of subhalo 5, the subtree of subhalo 5 consists of all subhalos with IDs between 5 and 13. Similarly, the main progenitor branch of any subhalo can be retrieved efficiently using the 'main leaf progenitor' link.

Both SubLink and LHaloTree contain the links 'first subhalo in FoF group' (light brown dotted arrow) and 'next subhalo in FoF group' (dark brown dotted arrow), which connect subhalos that belong to the same FoF group. The FoF groups do not play a direct role in the construction of the merger tree. However, in SubLink, subhalos that belong to the same FoF group are also considered to be part of the same tree. As a result, two otherwise independent trees (based on the progenitor and descendant links) are considered to be the same tree if they are "connected" by a FoF group. This is exemplified in the figure by the FoF group containing subhalos 12, 16, and 20. This FoF group acts as a bridge between the left and right trees.

The SubLink algorithm constructs merger trees at the subhalo level. A unique descendant is assigned to each subhalo in three steps (see Rodriguez-Gomez+ 2015). First, descendant candidates are identified for each subhalo as those subhalos in the following snapshot that have common particles with the subhalo in question. Second, each of the descendant candidates is given a score based on a merit function that takes into account the binding energy rank of each particle. Third, the unique descendant of the subhalo in question is the descendant candidate with the highest score. Sometimes the halo finder does not detect a small subhalo that is passing through a larger structure, because the density contrast is not high enough. {\sc SubLink} deals with this issue by allowing some subhalos to skip a snapshot when finding a descendant. Once all descendant connections have been made, the main progenitor of each subhalo is defined as the one with the "most massive history" behind it.

Note that this merger tree comes in two varieties: "dark-matter based" and "baryonic based". The dark-matter based tree is the fiducial choice, and has been publicly released as "SubLink". The baryonic based tree is called "SubLink_gal" and has not been publicly released for simplicity, although it is available upon request. While the two will largely give identical results, depending on scientific application, one might be more useful than the other.

The SubLink merger tree is one large data structure split across several sequential HDF5 files named tree_extended.[fileNum].hdf5, where [fileNum] goes from e.g. 0 to 9 for the Illustris-1 run. These files store the data on a per tree basis, and therefore are completely independent from each other. More specifically, any two subhalos that are connected by any of the pointers described in the SubLink table are guaranteed to belong to the same tree, and, therefore, their data is found in the same file. The following table lists the fields which are present in each file.

Field DataType Dimensions Units Description
SubhaloID int64 (N) - Unique identifier of this subhalo, assigned in a "depth-first" fashion (Lemson & Springel 2006). This value is contiguous within a single tree.
SubhaloIDRaw int64 (N) - Unique identifier of this subhalo in raw format (= SnapNum*10^12 + SubfindID).
LastProgenitorID int64 (N) - The SubhaloID of the last progenitor of the tree rooted at this subhalo. Since the SubhaloIDs are assigned in a "depth-first" fashion, all the subhalos contained in the tree rooted at this subhalo are the ones with SubhaloIDs between (and including) the SubhaloID and LastProgenitorID of this subhalo. For subhalos with no progenitors, LastProgenitorID == SubhaloID.
MainLeafProgenitorID int64 (N) - The SubhaloID of the last progenitor along the main branch, i.e. the earliest progenitor obtained by following the FirstProgenitorID pointer. For subhalos with no progenitors, MainLeafProgenitorID == SubhaloID.
RootDescendantID int64 (N) - The SubhaloID of the latest subhalo that can be reached by following the DescendantID link, i.e. the root of the tree to which this subhalo belongs. For subhalos with no descendants, RootDescendantID == SubhaloID.
TreeID int64 (N) - Unique identifier of the tree to which this subhalo belongs.
SnapNum int16 (N) - The snapshot in which this subhalo is found.
FirstProgenitorID int64 (N) - The SubhaloID of this subhalo's first progenitor. The first progenitor is the one with the "most massive history" behind it (following De Lucia & Blaizot 2007). For subhalos with no progenitors, FirstProgenitorID == -1.
NextProgenitorID int64 (N) - The SubhaloID of the subhalo with the next most massive history which shares the same descendant as this subhalo. If there are no more subhalos sharing the same descendant, NextProgenitorID == -1.
DescendantID int64 (N) - The SubhaloID of this subhalo's descendant. If this subhalo has no descendants, DescendantID == -1.
FirstSubhaloInFOFGroupID int64 (N) - The SubhaloID of the first subhalo (i.e., the one with the most massive history) from the same FOF group.
NextSubhaloInFOFGroupID int64 (N) - The SubhaloID of the next subhalo (ordered by their mass history) from the same FOF group. If there are no more subhalos in the same FOF group, NextSubhaloInFOFGroupID == -1.
NumParticles uint32 (N) - Number of particles in the current subhalo which were used in the merger tree to determine descendants (e.g. DM-only or stars + star-forming gas).
Mass float32 (N) $10^{10} M_\odot/h$ Mass of the current subhalo, including only the particles which were used in the merger tree to determine descendants (e.g. DM-only or stars + star-forming gas).
MassHistory float32 (N) $10^{10} M_\odot/h$ Sum of the Mass field of all progenitors along the main branch (De Lucia & Blaizot 2007).
SubfindID int32 (N) - Index of this subhalo in the Subfind group catalog.
All original fields from the group catalogs are also available, reordered into the same order as the merger trees for convenience. See the group catalog description for their units, dimensions, and descriptions.
Fields: Group_M_Crit200, Group_M_Mean200, Group_M_TopHat200, SubhaloBHMass, SubhaloBHMdot, SubhaloCM, ...
Note: Group_M_Crit200, Group_M_Mean200, and Group_M_Tophat200 are FOF group quantities, so that all subhalos from the same FOF group will have the same value.

#### LHaloTree

The LHaloTree algorithm is virtually identical to that used for the Millennium simulation, constructing trees based on subhalos instead of main halos, described fully in the supplementary information of Springel+ (2005). In short, to determine the appropriate descendant, the unique IDs that label each particle are tracked between outputs. For a given halo, the algorithm finds all halos in the subsequent output that contain some of its particles. These are then counted in a weighted fashion, giving higher weight to particles that are more tightly bound in the halo under consideration, and the one with the highest count is selected as the descendant. In this way, preference is given to tracking the fate of the inner parts of a structure, which may survive for a long time upon infall into a bigger halo, even though much of the mass in the outer parts can be quickly stripped. To allow for the possibility that halos may temporarily disappear for one snapshot, the process is repeated for Snapshot n to Snapshot n+2. If either there is a descendant found in Snapshot $n + 2$ but none found in Snapshot n+1, or, if the descendant in Snapshot n+1 has several direct progenitors and the descendant in Snapshot n+2 has only one, then a link is made that skips the intervening snapshot.

The LHaloTree merger tree is one large data structure split across several HDF5 files named trees_sf1_99.[chunkNum].hdf5, where [chunkNum] goes from e.g. 0 to 511 for the Illustris-1 run. Within each file there are a number of groups named TreeX, where X is an integer which simply increases from zero to the number of tree groups in that file chunk. Note that a given TreeX group may contain subhalos spanning different FoF groups as well as snapshots, and to efficiently locate a specific subhalo at a specific snapshot (e.g z=0) the offsets can be used. The pair (SubhaloNumber,SnapNum) provides the indexing into the Subfind group catalog. The five other indices for each entry in a TreeX group (e.g. Descendant) index into that same group in the tree file. The following tables describe the fields. First, the Header group:

Dataset Dimensions Units Description
Redshifts {N_snap} - List of redshifts of the snapshots used to create this merger tree.
TotNsubhalos {N_snap} - Equal to the number of Subfind/Subhalo groups in the group catalog, for each snapshot used to create this merger tree.
TreeNHalos {N_halos} - 'The size of {N} for each "TreeX" group in this file', e.g. the total number of halos (across time) in that group.
FirstSnapshotNr 1 - First snapshot number used to make these merger trees (should be 0).
LastSnapshotNr 1 - Last snapshot number used to make these merger trees (should be 99 for TNG).
SnapSkipFac 1 - Snapshot stride when making these merger trees (should be 1).
NtreesPerFile 1 - 'The size of {N_halos} for this file', can be used to calculate the offset to map a FoF group number to a "TreeX" group name (made to be roughly equal across chunks).
NhalosPerFile 1 - The total number of tree members (subhalos) 'in this file.' Equals the sum of all elements of TreeNHalos.
ParticleMass 1 $10^{10} M_\odot / h$ The dark matter particle mass used to make these merger trees.

TreeX Groups:

Dataset Dimensions Description
SubhaloNumber (N) The ID of this subhalo, unique within the full simulation for this snapshot. Indexes the Subfind group catalog at SnapNum.
Descendant (N) The index of the subhalo's descendant within the merger tree, if any (-1 otherwise). Indexes this TreeX group.
FirstProgenitor (N) The index of the subhalo's first progenitor within the merger tree, if any (-1 otherwise). The first progenitor is defined as the most massive one (-1 if none). Indexes this TreeX group.
NextProgenitor (N) The index of the next subhalo from the same snapshot which shares the same descendant, if any (-1 if this is the last). Indexes this TreeX group.
FirstHaloInFOFGroup (N) The index of the main subhalo (i.e. the most massive one) from the same FOF group. Indexes this TreeX group.
NextHaloInFOFGroup (N) The index of the next subhalo from the same FOF group (-1 if this is the last). Indexes this TreeX group.
FileNr (N) File number in which the subhalo is found. (Redundant, i.e. for a given [chunkNum] file, this array will be constant and equal to [chunkNum])
SnapNum (N) The snapshot in which this subhalo was found.
Most all original fields from the group catalogs are also available, reordered into the same order as the merger trees for convenience. See the group catalog description for their units, dimensions, and descriptions.
Fields: Group_M_Crit200, Group_M_Mean200, Group_M_TopHat200, SubhaloBHMass, SubhaloBHMdot, SubhaloCM, ...
Note: Group_M_Crit200, Group_M_Mean200, and Group_M_Tophat200 are FOF group quantities, so that only the first subgroup from each FOF group will have a nonzero value.

### 5. Supplementary Data Catalogs

"Supplementary" or "post-processing" catalogs have been created by various members of the TNG team, extended collaboration, and general public. They typically contain valuable (and often computationally expensive) calculations, which are released here in the hope that they will accelerate the science and productivity of all users of the TNG data. Most often, they are catalogs of physical quantities calculated for halos or subhalos, at one or more snapshots. Each will have a somewhat different structure, so one should carefully read the provided documentation. To use any of these catalogs, one should download the respective HDF5 file(s) and directly load them using e.g. h5py.

### (a) Tracer Tracks

The Monte Carlo tracer particles can be difficult to work with, and this dataset aims to enable some simple use cases. In particular, a number of catalogs are available, each of which contains information on all the tracers in the simulation which are contained within (all) FoF halos at redshift zero. Tracers have been re-arranged into "group order", such that you can quickly load the tracers which belong to a given subhalo or halo. Further, their evolution through time has been saved, and these "tracks" through time are immediately available, such that one does not need to load previous snapshots.

A series of files with the common base "tr_all_groups_99_*" indicating that each contains information on all the tracers in the simulation which are contained within FoF halos at snapshot 99 (z=0). The 'meta' file contains the IDs of the tracers (and their parents), which are ordered according to their halo/subhalo membership, exactly following the group-ordering of the particles in the snapshots. Therefore, the order of the ParentIDs list is the same as those IDs appear in the snapshots (although with possible omissions or duplications if a parent has no, or multiple, tracers). The 'meta' file also contains the lengths and offsets, for both halos and subhalos (in exact analogy to GroupLenType, SubhaloLenType, offsets/Group/SnapByType, and offsets/Subhalo/SnapByType). This allows the child tracers of any halo or subhalo (at z=0) to be selected.

Note that tracers are stored separately by parent type (at z=0), either gas, stars (pt4), or bhs.

All other 'data' files (e.g. temp, pos, ...) contain the evolutionary tracks of this property, for the identical set of tracers through time, recorded for all snapshots which contain tracers. For TNG100 these are the 20 full snapshots, while for TNG50 and TNG300 these are all 100 snapshots.

For example, the temperature history of the third tracer of Halo=10 in a BH parent is (python indexing convention pseudocode):

start = meta.hdf5/Halo/TracerOffset/bhs[10]
temp_K = temp.hdf5/temp[start + 2, :]
plot( temp.hdf5/redshifts[:], temp_K )


while the evolution of distance from the halo center, in units of the virial radius, of all tracers in Subhalo=20 in star parents is given by:

start = meta.hdf5/Subhalo/TracerOffset/stars[20]
length = meta.hdf5/Subhalo/TracerLength/stars[20]
for i in range(length):


If you want all tracers in a halo/subhalo regardless of their z=0 parent type, then you must extract and combine the three types. If you want a subset of tracers of a given halo/subhalo at z=0 (e.g. only those in some radial shell), you must intersect the set of these IDs with the subset of meta.hdf5/ParentIDs for that halo/subhalo (or equivalently, with the entirety of meta.hdf5/ParentIDs, the only penalty being speed) and use the resulting indices.

For complete definitions of each value, see the following table and Nelson+ (2019b) where they were first used and presented. Citation to this paper is requested if you use these data catalogs. For more information and examples related to the Monte Carlo tracer particles, see Genel+ (2013), Nelson+ (2013), and Nelson+ (2015).

Simulation and snapshot coverage:

• Currently available for the 3 resolution levels of TNG100: TNG100-1, TNG100-2, TNG100-3.
• All tracers in all parent types (gas cells, stars, and black holes), in all FoF halos at $z=0$.
• For each, time tracks have twenty entries, corresponding to the twenty "full" snapshots in TNG100.

The contents of the 'meta' file are:

Dataset Name Shape Type Description
/TracerIDs N_tr uint64 The ordered list of tracer IDs in this catalog. Corresponds to all tracers in all FoF halos at z=0. The same 'group ordered' scheme of the snapshots is followed, i.e. the tracers which belong to successive FoF halos are sequential, and likewise for successive Subfind subhalos, modulo FoF fuzz.
/ParentIDs N_tr uint64 The ordered list of the IDs of the parents of each tracer in this catalog.
/Halo/TracerLength/{gas,stars,bhs} N_groups int32 A dataset for each of {gas,stars,bhs} which gives the total number (length) of tracers in each FoF halo, at z=0, with parents of that type.
/Halo/TracerOffset/{gas,stars,bhs} N_groups int64 A dataset for each of {gas,stars,bhs} which gives the offset (i.e. cumulative sum of preceeding lengths) of tracers for each FoF halo, at z=0, with parents of that type. For a given parent type, the set of tracer indices in halo ID N at z=0 is then given by [TracerOffset[N], TracerOffset[N]+1, ..., TracerOffset[N]+TracerLength[N]-1]. The corresponding tracer IDs are given by TracerIDs[TracerOffset[N]:TracerOffset+TracerLength[N]-1], the indices inclusive.
/Subhalo/TracerLength/{gas,stars,bhs} N_subhalos int32 Same as TracerLength above, but for subhalos.
/Subhalo/TracerOffset/{gas,stars,bhs} N_subhalos int64 Same as TracerOffset above, but for subhalos.

For the data files, all values which are computed with respect to evolving halo properties use the Sublink tree. Tracers are associated with the central subhalo of the FoF halo they belong to at z=0, and the main progenitor branch (MPB) of that subhalo is used backwards in time. If the MPB is untracked at a snapshot, these values (rad_rvir,vrad,angmom) are set to NaN at that snapshot. Values with respect to the subhalo center use SubhaloPos (maximally bound particle position), while those with respect to the subhalo velocity uses the mass-weighted mean velocity of all star particles in the subhalo (if the subhalo has no stars, these values are then recorded as NaN).

The structure of the data files is:

File Dataset Name Shape Type Units Description
(all) /snaps N_snaps int32 -- The snapshot numbers corresponding to each of the recorded times (the first dimension of the multi-dimensional data array). Exists in and the same for all data files.
(all) /redshifts N_snaps float32 -- The redshifts corresponding to each of the recorded times (the second dimension of each multi-dimensional data array). Exists in and the same for all data files.
*_temp.hdf5 /temp (N_tr, N_snaps) float32 $\rm{Kelvin}$ The temperature of the parent gas cell for each tracer at each time. Tracers in non-gas parents record NaN at that snapshot. (May be in log10).
*_sfr.hdf5 /sfr (N_tr, N_snaps) float32 $M_\odot / \rm{yr}$ The star formation rate of the parent gas cell for each tracer at each time. Tracers in non-gas parents record NaN at that snapshot. (May be in log10).
*_entr.hdf5 /entr (N_tr, N_snaps) float32 $\rm{K} \,\rm{cm}^2$ The entropy of the parent gas cell for each tracer at each time, calculated as $\rm{P} / \rho^{\gamma}$. Tracers in non-gas parents record NaN at that snapshot. (May be in log10).
*_subhalo_id.hdf5 /subhalo_id (N_tr, N_snaps) int32 -- The subhalo ID to which the tracer belongs at that snapshot.
*_parent_indextype.hdf5 /parent_indextype (N_tr, N_snaps) int64 -- Encodes the snapshot index of the parent (by type) as well as the parent type. The value equals (type*1e11 + index). Therefore, for example, if a tracer is in a BH parent at a given snapshot, parent_indextype will have a value between 5e11 and 6e11, and its value minus 5e11 will provide the global index of any PartType5 dataset in the snapshot corresponding to its parent.
*_rad_rvir.hdf5 /rad_rvir (N_tr, N_snaps) float32 Radial distance of the parent from the subhalo center, of the MPB at this snapshot, normalized by the virial radius $r_{\rm 200,crit}$ of the progenitor halo at that snapshot.
*_pos.hdf5 /pos (N_tr, 3, N_snaps) float32 $\rm{ckpc/h}$ The x,y,z coordinates for each tracer at each time (comoving code units), of the parent gas cell, star, or BH.
*_vel.hdf5 /vel (N_tr, 3, N_snaps) float32 $\rm{km}\sqrt{a}/s$ The x,y,z velocity for each tracer at each time (comoving code units), of the parent gas cell, star, or BH.
*_vrad.hdf5 /vrad (N_tr, N_snaps) float32 $\rm{km/s}$ Radial velocity of the parent with respect to the subhalo center and velocity, of the MPB at this snapshot, with the Hubble expansion added in. Negative denotes inwards.
*_angmom.hdf5 /angmom (N_tr, N_snaps) float32 $\rm{kpc \,km/s}$ Magnitude of the specific angular momentum vector of the parent, with respect to the subhalo center and velocity, of the MPB at this snapshot, accounting for Hubble expansion.

Important note! These files are very large. For TNG100, the one-dimensional data files (e.g. temp, entr, vrad) are ~300 GB each. Therefore, functionality has been added to the data access API to enable the retrieval of tracer tracks on a per-halo or per-subhalo basis. In particular, an API request for a halo/subhalo cutout, of particles/cells from the snapshot can specity tracer_tracks as the 'particle type', together with any of the dataset names above (namely, TracerIDs, ParentIDs, temp, entr, and so on). For example, whereas a normal cutout request for the positions of all gas cells of halo ID 1000 in TNG100-1 at redshift zero would be:

https://www.tng-project.org/api/TNG100-1/snapshots/99/halos/1000/cutout.hdf5?gas=Coordinates


A cutout request for the temperature tracks of all the tracers belonging to that halo would be:

https://www.tng-project.org/api/TNG100-1/snapshots/99/halos/1000/cutout.hdf5?tracer_tracks=temp


### (b) Star Formation Rates

A catalog of time-averaged, rather than instantaneous, star formation rates of galaxies. To do so the SFRs are derived the stellar particles actually produced across different time spans, using their initial mass at birth. This is in contrast to all values in the group/subhalo catalogs, which are instantaneous values (measured from the gas cells). The time-averaged methodology, across a given period of Myr or Gyr, better reflects the values obtained via various observational tracers. For complete definitions on the calculation of each value, see the following table, Donnari+ (2019), and Pillepich+ (2019) where they were first presented. Citation to these two papers is requested if you use these data catalogs.

Simulation and snapshot coverage:

Group Name Units Description
/Snapshot_N/SubfindID - The Subfind IDs these values correspond to at this snapshot.
/Snapshot_N/SFR_MsunPerYrs_in_r5pkpc_{X}Myrs Msun/yr The galaxy SFR including stars within a 3D aperture of 5 physical kpc, averaged across the last {X} Myr.
This roughly mimics the SDSS fiber aperture.
/Snapshot_N/SFR_MsunPerYrs_in_InRad_{X}Myrs Msun/yr The galaxy SFR including stars within a 3D aperture of two times the stellar half mass radius,
averaged across the last {X} Myr.
/Snapshot_N/SFR_MsunPerYrs_in_r30pkpc_{X}Myrs Msun/yr The galaxy SFR including stars within a 3D aperture of 30 physical kpc, averaged across the last {X} Myr.
/Snapshot_N/SFR_MsunPerYrs_in_all_{X}Myrs Msun/yr The galaxy SFR including all gravitationally bound stars of the subhalo, averaged across the last {X} Myr.

For all measurements, time intervals {X} exist for X = 10, 50, 100, 200, 1000 (Myr).

### (c) Stellar Circularities, Angular Momenta, Axis Ratios

A catalog of circularities, angular momenta and axis ratios of the stellar component of galaxies. For complete definitions on the calculation of each value, see the following table and Genel+ (2015), where they were first presented. Citation to that paper is requested if you use these data catalogs.

The first four quantities are calculated after alignment with the angular momentum vector of the stars within 10 times the stellar half-mass radius, and measure the quantities inside that radius. The Circ* fields are based on the distribution of the circularity parameter $\epsilon$. First the system is rotated such that the z-axis is aligned with the angular momentum vector as described above. Then, for every stellar particle with specific angular momentum $J_z$ we calculate $\epsilon = \frac{ J_z }{ J(E) }$ where $J(E)$ is the maximum angular momentum of the stellar particles at positions between 50 before and 50 after the particle in question in a list where the stellar particles are sorted by their binding energy ($=U_{\rm grav} + v^2$).

Simulation and snapshot coverage:

Group Name Units Description
/Snapshot_N/SubfindID - The Subfind IDs these values correspond to at this snapshot.
/Snapshot_N/SpecificAngMom $km/s \times kpc$ The specific angular momentum of the stars.
/Snapshot_N/CircAbove07Frac - The fractional mass of stars with $\epsilon \gt 0.7$. This is a common definition of the "disk" stars - those with significant (positive) rotational support.
/Snapshot_N/CircAbove07MinusBelowNeg07Frac - The fractional mass of stars with $\epsilon \gt 0.7$ minus the fraction of stars with $\epsilon \lt -0.7$. This removes the contribution of the "bulge" to the "disk", assuming the bulge is symmetric around $\epsilon=0$.
/Snapshot_N/CircTwiceBelow0Frac - The fractional mass of stars with $\epsilon \lt 0$, multiplied by two. This is another common way in the literature to define the "bulge".
/Snapshot_N/MassTensorEigenVals $kpc$ Three numbers for each galaxy that correspond to the eigenvalues of the mass tensor of the stellar mass inside the stellar $2R_{1/2}$. In a coordinate system that is aligned with the eigenvectors (principal axes), the component $i$ equals $M_i\equiv\sqrt{\sum\limits_j m_jr_{j,i}^2}/\sqrt{\sum\limits_j m_j}$, where $j$ enumerates over stellar particles inside that radius, $r_{j,i}$ is the distance of stellar particle $j$ in the $i$ axis from the most bound particle of the galaxy, and $m_j$ is its mass, and $i\in(1,2,3)$. They are sorted such that $M_1 \lt M_2 \lt M_3$. Example use: $M_1/\sqrt{M_2M_3}$ can represent the flatness of the galaxy.
/Snapshot_N/ReducedMassTensorEigenVals - Similar to the above, except less weight is given to further away particles. The orientation of the system is the same, but the quantity measured for each axis is instead $M_i\equiv\sqrt{\sum\limits_j m_jr_{j,i}^2/R_j^2}/\sqrt{\sum\limits_j m_j}$, where $R_j\equiv\sqrt{\sum\limits_i r_{j,i}^2}$ is the distance of star $j$ from the centre of the galaxy.

Note: For original Illustris (only), the "SpecificAngMom" and "Circ*" fields are available for snapshots 13 through 135, while the "*MassTensor*" fields are available for snapshots 38 through 135.

Note: In addition to the values measured within $10 R_E$, the "SpecificAngMom" and "Circ*" fields are also computed including all stars in the subhalo. These are available as the _allstars datasets.

### (d) Subhalo Matching Between Runs

The possibility exists to cross-match subhalos between:

• (i) matched baryonic and dark matter only runs (e.g. TNG100-1 and TNG100-1-Dark) runs, at the same resolution.
• (ii) two baryonic realizations of the same box at different resolutions (e.g. TNG100-1 and TNG100-2)
• (iii) two simulations of the same box with different physical models (e.g. TNG100-1 and Illustris-1)

All baryonic runs have complete matching catalogs to their dark matter only counterparts, the first option (i) above.

These are data products from: Rodriguez-Gomez+ (2015; for SubLink), and Nelson+ (2015; for LHaloTree). Citation to these papers is requested if you use this data.

Simulation and snapshot coverage:

Data format: a single file subhalo_matching_to_dark.hdf5 for each simulation. Each contains one hundred groups named Snapshot_N. Within each group are two arrays, each with the same size, equal to the number of subhalos at the corresponding snapshot. The two arrays provide the results of two different matching algorithms, and should for the most part provide the same answer. Each array gives integer indices, whose value is the corresponding index of the matched subhalo in the DM only run. If no suitable match exists, a value of -1 is present for that subhalo index.

• The first array SubhaloIndexDark_LHaloTree is based on the LHaloTree matching algorithm. The matching is bidirectional, i.e. TNG <-> DMO. In each case, the best subhalo candidate is chosen as that with the largest number of matching DM particles ($\alpha=0$). Only if the candidate in each direction agrees (bijective), then these matches are saved.
• The second array SubhaloIndexDark_SubLink is based on the SubLink weighting algorithm. The direction of the matching is TNG -> DMO, i.e. for each subhalo in the baryonic physics box a best match is found in the DMO run.

The second two types (ii) and (iii) of matching catalogs (between different resolution levels, and between TNG100 and original Illustris), will be available soon.

### (e) Stellar Projected Sizes

A catalog of stellar "sizes", mostly half-light radii, all in 2D projection. For more details of the modeling see Genel+ (2018), where they were first presented. Citation to that paper is requested if you use these data catalogs.

Simulation and snapshot coverage:

• Available for all baryonic simulations: TNG50-1, TNG100-1 and TNG300-1.
• Eight snapshots: z=0, 0.5, 1.0, 1.5, 2.0, 3.0, 4.0, 5.0.
• Restricted to subhalos with stellar mass $M^\star > 3 \times 10^8 M_\odot$ measured within the usual twice stellar half mass radius, and at least 100 stars.

There is one file for every snapshot, containing a single dataset /Rhalf/, which is a 10 x 5 x Nsubs shaped array. Namely, for each subhalo there are 10x5 different values of half-something radii, as follows:

• Along the dimension of length 10, the values correspond to different somethings, in order, as follows: half-mass, half-star-formation-rate, half-light in the 8 bands of the “stellar photometrics”, namely U, B, V, K, g, r, i, z. Note that the impact of dust attenuation/scattering is not taken into account.
• Along the dimension of length 5, the values correspond to projections along various lines of sight, in order, as follows: face-on, largest edge-on, smallest edge-on, random edge-on, box z-axis, where:
• The face-on direction is set according to the moment of inertia tensor of the star-formation distribution within $2 R_{1/2,\star}$ (unless there are fewer than 50 star-forming cells, in which case it is according to the moment of inertia tensor of the stellar mass distribution within $R_{1/2,\star}$.
• All three edge-on directions are from lines of sights that are perpendicular to the face-on direction. The largest and smallest edge-on directions mean the particular such lines of sight that produce the largest/smallest, respectively, projected radii for the star-formation distribution within $2 R_{1/2,\star}$. The random edge-on direction is indeed at a random line of sight within the "edge-on plane".
• For a "random" angle, choose the projection along the box z-axis, which is of course "random" with respect to each and every individual galaxy, since there is no preferred direction to the simulation.

All units are physical kpc.

Note: a value of -1 indicates that the subhalo falls outside of the selection described above, and no data is available for this object.

### (f) Blackhole Mergers and Details

This catalog is comprised of two data sets: 'mergers' and 'details'. The mergers file contains a record of each BH-BH merger in the simulation. The details file contain properties of each BH at significantly higher time resolution than the snapshots. In both cases the information is extracted from output files separate from the snapshots, and so represents additional data which is otherwise not available from the snapshots alone. Here we distinguish the two BHs which participate in the merger as 'in' and 'out' BH. The difference, which during the simulation is chosen randomly by the code, is which BH ID number persists along with the remnant after the merger. The 'out' BH survives after the merger, increased in mass by that of the 'in' BH--which no longer exists after the merger event.

There exists one blackhole_mergers.hdf5 and one blackhole_details.hdf5 per baryonic run. All datasets corresponding to physical values are in code units, with masses in units of $10^{10} M_\odot / h$, mass accretion rates in units of $10.22 M_\odot / \rm{yr}$, gas densities in units of $(10^{10} M_\odot / h) / (\rm{ckpc} / h)^3$, and gas sound speeds in units of $\rm{km / s}$. They were generated with the illustris_blackholes code. Citation recommmended to Kelley et al. (2016) and Blecha et al. (2016) as appropriate.

Simulation and snapshot coverage:

• Available for all TNG baryonic runs, as well as all original Illustris baryonic runs.
• Black hole mergers: TNG50-1, TNG50-2, TNG50-3, TNG50-4, TNG100-1, TNG100-2, TNG100-3, TNG300-1, TNG300-2, TNG300-3.
• Black hole details: TNG50-1, TNG50-2, TNG50-3, TNG50-4, TNG100-1, TNG100-2, TNG100-3, TNG300-1, TNG300-2, TNG300-3.
• IMPORTANT NOTE: For both the mergers and details files, there are a few small missing data gaps. In general these files are fragile and may contain inconsistencies. In TNG100-1, this includes redshift periods [0.96 - 0.98], [1.18 - 1.20], [1.27 - 1.40], [2.06 - 2.48]. For Illustris-1, data is missing in the redshift range from approximately z = 0.14 to z = 0.38, where roughly half of the BH data is missing, except at the higher-z end of the range, where nearly all of the mergers are missing around snapshots 110-111. All other runs are unaffected. This information was lost to data corruption and cannot be recovered, and appropriate care should be taken in analysis of this data.

Blackhole mergers:

Dataset Shape/Datatype Description
/Header/unique_ids (NumBHsTot) uint64 The ID numbers of all unique BH participating in mergers.
/Header/num_mergers (attribute) The total number of mergers stored $(N)$.
/tree/* - Information describing the BH merger tree. If one of the below events does not exist, the value in the array is -1, NOTE: not zero. For example, if next[123] = 345, then merger 345 is the next merger that the BH remnant from merger 123 is involved in. If, prev_in[345] == 123 and prev_out[345] = -1, then the 123 merger remnant is the 'in' BH of merger 345, and the other BH of that merger was never in a previous merger (and so has a prev value of -1).
/tree/next (N) int The index number of the next merger this remnant takes part in.
/tree/prev_in (N) int The index number of the previous merger this 'in' BH was part of.
/tree/prev_out (N) int The index number of the previous merger this 'out' BH was part of.
/details/* - Information from the 'details' catalog for the BHs in each merger. Details entries were searched by trying to match the 'in' BH just before merger, and the 'out' BH both just before, and just after merger. This corresponds to the three 'columns' for each entry 'row': [0: in-before, 1: out-before, 2: out-aft]. Frequently these details were not found, in which case the array values are zero.
/details/time (N,3) float Time (scale-factor) for each entry.
/details/mass (N,3) float Blackhole mass.
/details/mdot (N,3) float Blackhole mass accretion rate. NOTE: This is the expected Bondi accretion rate, before the Eddington limit or local pressure criterion are applied, and thus will not in general reflect the true mdot of the BH used during the simulation. Should be used with caution.
/details/rho (N,3) float Local gas density in the vicinity of the blackhole.
/details/cs (N,3) float Local gas sound-speed in the vicinity of the blackhole.
/time (N) float Time (scale-factor) for each merger event.
/id_in (N) uint64 ID number of the 'in' BH.
/id_out (N) uint64 ID number of the 'out' BH.
/mass_in (N) float Mass of the 'in' BH (immediately preceding merger).
/mass_out (N) float Mass of the 'out' BH (immediately preceding merger).
/snapshot (N) int Output snapshot during which, or immediately following, this merger event occured.

Blackhole details:

Dataset Shape/Datatype Description
/Header/num_entries (attribute) The total number of details entries stored $(N)$.
/Header/num_blackholes (attribute) The total number of unique BHs with details entries $(M)$.
/unique/id (M) uint64 ID numbers of each unique BH.
/unique/first_index (M) int The index number (into any of the size N arrays) of the first entry for each unique BH.
/unique/num_entries (M) int The total number of entries (in any of the size N arrays) for each unique BH.
/id (N) uint64 ID number of the BH for each details entry.
/time (N) float Time (cosmological scale-factor) for each entry.
/mass (N) float Blackhole mass.
/mdot (N) float Blackhole mass accretion rate. NOTE: This is the expected Bondi accretion rate, before the Eddington limit or local pressure criterion are applied, and thus will not in general reflect the true mdot of the BH used during the simulation. Should be used with caution.
/rho (N) float Local gas density in the vicinity of the blackhole.
/cs (N) float Local gas sound-speed in the vicinity of the blackhole.

### (g) Stellar Assembly

This large catalog contains information about the stellar assembly of all galaxies across all snapshots, focusing on in situ vs. ex situ stellar mass growth, the contribution from star formation before or after infall, the role of major and/or minor mergers and flyby encounters. There exists one stellar_assembly.hdf5 file per baryonic run. All datasets are masses, and are given in code units, that is, $10^{10} M_\odot / h$. There is one group per snapshot, and within each group, all datasets have the same size, corresponding to exactly one entry per Subfind subhalo. Citation recommmended to Rodriguez-Gomez et al. (2015), Rodriguez-Gomez et al. (2016a), and/or Rodriguez-Gomez et al. (2016b) as appropriate. Further information and usage examples are available in these same papers.

Simulation and snapshot coverage:

Dataset Description
/Snapshot_N/StellarMassInSitu The amount of stellar mass that was formed in situ.
/Snapshot_N/StellarMassExSitu The amount of stellar mass that was formed ex situ.
/Snapshot_N/StellarMassTotal The total stellar mass of the galaxy.
/Snapshot_N/StellarMassAfterInfall The amount of (ex situ) stellar mass that was formed after entering the halo where the galaxy is currently found.
/Snapshot_N/StellarMassBeforeInfall The amount of (ex situ) stellar mass that was formed before entering the halo where the galaxy is currently found.
/Snapshot_N/StellarMassFromCompletedMergers The amount of (ex situ) stellar mass that was accreted from completed mergers, as defined by the "AccretionOrigin" property.
/Snapshot_N/StellarMassFromCompletedMergersMajor Same as above, but only considering major mergers (stellar mass ratio > 1/4), as defined by the "MergerMassRatio" property of each star.
/Snapshot_N/StellarMassFromCompletedMergersMajorMinor The same, but considering major and minor mergers (stellar mass ratio > 1/10).
/Snapshot_N/StellarMassFromOngoingMergers The amount of (ex situ) stellar mass that was accreted from ongoing mergers, as defined by the "AccretionOrigin" property. NOTE: by definition, this quantity is zero at z=0 (since a flyby cannot be distinguished from an ongoing merger). In fact, it is recommended to combine "ongoing mergers" with "flybys" into a single category called "stripped from surviving galaxies" (see references).
/Snapshot_N/StellarMassFromOngoingMergersMajor Same as above, but only considering major mergers (stellar mass ratio > 1/4), as defined by the "MergerMassRatio" property of each star.
/Snapshot_N/StellarMassFromOngoingMergersMajorMinor The same, but considering major and minor mergers (stellar mass ratio > 1/10).
/Snapshot_N/StellarMassFromFlybys The amount of (ex situ) stellar mass that was accreted during flybys, as defined by the "AccretionOrigin" property.
/Snapshot_N/StellarMassFromFlybysMajor Same as above, but only considering major flybys (stellar mass ratio > 1/4), as defined by the "MergerMassRatio" property of each star.
/Snapshot_N/StellarMassFromFlybysMajorMinor The same, but considering major and minor flybys (stellar mass ratio > 1/10).
/Snapshot_N/StellarMassFormedOutsideGalaxies The amount of (ex situ) stellar mass that was formed outside of any galaxy (as determined by SUBFIND).

The 'galaxy' quantities above should satisfy the following invariants (up to rounding errors):

• StellarMassInSitu + StellarMassExSitu == StellarMassTotal
• StellarMassBeforeInfall + StellarMassAfterInfall + StellarMassFormedOutsideGalaxies == StellarMassExSitu
• StellarMassFromCompletedMergers + StellarMassFromOngoingMergers + StellarMassFromFlybys + StellarMassFormedOutsideGalaxies == StellarMassExSitu

The above descriptions make reference to two values computed for every star particle in the simulation, derived as follows (see references for more details):

• AccretionOrigin: A value which can take the following integer values: 0, 1, and 2 for ex situ stellar particles that were accreted from completed mergers (i.e., when the subhalo in which the stellar particle formed has already merged with the current subhalo), ongoing mergers (i.e., when the subhalo in which the stellar particle formed has not yet merged with the current subhalo, but will do so at a later snapshot in the simulation), and flybys (i.e., when the subhalo in which the stellar particle formed has not merged with the current subhalo, and will not do so at any future snapshot in the simulation), respectively; and -1 if not applicable (i.e., if the particle was formed in situ or if it was formed outside of any subhalo). NOTE: towards the end of the simulation, it becomes impossible to distinguish a flyby from an ongoing merger. Therefore, cases (1) and (2) are usually considered as being part of the same category: "stripped from surviving galaxies".
• MergerMassRatio: The stellar mass ratio of the merger in which a given ex-situ stellar particle was accreted (if applicable). The mass ratio is measured at the time when the secondary progenitor reaches its maximum stellar mass. NOTE: this quantity was calculated also in the case of flybys, without a merger actually happening.

A small caveat: the "subhalo switching" problem" can result in some galaxies having (spurious) ex situ fractions very close to 1 (say, if a satellite suddenly becomes a central, then most of its newly assigned mass will appear as ex situ). The number of galaxies this affects is negligible, but still noticeable in e.g. a scatter plot.

### (h) Subbox Subhalo List

This catalog describes the time-evolving intersection of the subhalos/merger trees with the subboxes. Allows the selection of objects of interest, which can then be traced at high time resolution using the snapshots of a given subbox. This enables science requiring high time resolution, and also visualizations of galaxy-scale evolution. This data was created in Nelson+ (2019b) and citation to that work is requested if you use this supplementary catalog.

Simulation and snapshot coverage:

• Available for all subboxes of all TNG baryonic runs (see download page for a given run for links).

Each simulation contains one file per subbox named subbox{N}_{snap}.hdf5, corresponding to subbox number {N} and the subhalo selection of all {nSubhalosFullSnap} at snapshot {snap} of the full box. Each contains the following fields:

Field Dimensions dtype Description
SubboxScaleFac {nSubSnaps} float32 The scale factor of each subbox snapshot.
SubboxSnapNum {nFullSnaps} int16 For each full box snapshot, the corresponding subbox snapshot number (at the same time). Unmatched has value -1.
FullBoxSnapNum {nSubSnaps} int16 For each subbox snapshot, the corresponding fullbox snapshot number (at the same time). Unmatched has value -1.
SnapNumMapApprox {nSubSnaps} float32 For each subbox snapshot, the time delta between its scale factor and the matching fullbox snapshot. This is 0.0 for exact matches, but for runs with SubboxSyncModulo > 1, this can be greater than zero.
EverInSubboxFlag {nSubhalosFullSnap} bool For every subhalo in the full box group catalog, flag indicating if its main progenitor branch (MPB) is ever inside the subbox at any point in time.
SubhaloIDs {nSubhalos} int32 List of subhalo IDs/indices from the fullbox snapshot which are inside the subbox at some point in time.
SubhaloPos {nSubhalos,nSubSnaps,3} float32 Interpolated position of each such subhalo at each subbox snapshot (cubic spline within MPB extent, linear extrapolation outside).
SubhaloPosExtrap {nSubhalos,nSubSnaps} int16 Flag which is one if this particular SubhaloPos is an extrapolation beyond the end(s) of the MPB, and zero otherwise.
SubhaloMBID {nSubhalos,nSubSnaps} uint64 The SubhaloIDMostbound replicated to each subbox snapshot, i.e. to allow the possibility for an alternate position definition as Subfind would compute.
SubhaloMinSBSnap {nSubhalos} int32 The minimum subbox snapshot number where this subhalo is inside the subbox (i.e. 0 if it is inside since the beginning of time).
SubhaloMaxSBSnap {nSubhalos} int32 The maximum subbox snapshot number where this subhalo is inside the subbox (i.e. equal to the total number of subbox snapshots if inside at the final time).
minEdgeDistRedshifts {7} float32 A list of redshifts (100.0, 6.0, 4.0, 3.0, 2.0, 1.0, 0.0) corresponding to the following field:
SubhaloMinEdgeDist {nSubhalos, 7} float32 The minimum distance (code units) between the boundaries of the subbox and the (interpolated) position of the subhalo, between z=0 and the given redshift. A positive value indicates inside, so e.g. SubhaloMinEdgeDist[9,5] > 300.0 implies that the 10th subhalo is never closer than 300 ckpc/h from the edges of the subbox between z=0 and z=1. A negative value indicates outside.
Subhalo{Stars,Gas,BH}_Mass {nSubhalos, nRad, nSubSnaps} float32 Measurements of the total enclosed mass (code units) in each of these 3 components, as a function of time, for several different 3D apertures. These are: [30 pkpc, 30 ckpc/h, 50 ckpc/h], so nRad=3.
SubhaloGas_SFR {nSubhalos, nRad, nSubSnaps} float32 The total StarFormationRate of all gas within each aperture (code units), as a function of time.
SubhaloBH_CumEgyInjection_{QM,RM} {nSubhalos, nRad, nSubSnaps} float32 The maximum of the 'BH_CumEgyInjection_{QM,RM}' fields for any BHs within each aperture (code units), as a function of time.
SubhaloBH_Num {nSubhalos, nRad, nSubSnaps} int16 The number of BHs within each aperture, as a function of time.

Note that {nSubhalos} corresponds to the subset of subhalos which are ever inside the subbox. The 'SubLink' merger tree is used for all MPBs.

### (i) Molecular and atomic hydrogen (HI+H2) galaxy contents

This catalog contains post-processed modeling of atomic (HI) and molecular (H2) hydrogen, on a per subhalo (i.e. per galaxy) basis. The total mass of each component is available, as well as pre-computed radial profiles. Note that all results sum, by construction, over the gas cells gravitationally bound to each subhalo only. Citation recommmended to Diemer et al. (2018) and Diemer et al. (2019) as appropriate.

Simulation and snapshot coverage:

• Available for: TNG50-1, TNG100-1, TNG100-2, TNG300-1, and Illustris-1.
• For each, redshifts: z=0, z=0.5, z=1, z=1.5, and z=2 (five snapshots per run).

In many of the datasets, the placeholder {model}_{type} appears. Here, {model} refers to a model for the HI/H2 transition, and can be one of:

Each model was computed on a cell-by-cell basis (the "volumetric" method, {type} = vol) and in 2D projection (the "map" method, {type} = map). For the L08 model, the cell-by-cell method was found to be unphysical and the L08_vol data are not included in the release for that reason.

Due to the fundamentally different nature of the volumetric and projected calculations, the radial profiles are provided in three versions, denoted as {proj} below. Profiles of projected quantities can only be expressed in projected, 2D radii (they carry the suffix {proj} = map in the profile names listed below). The profiles of volumetric quantities are given in two versions, namely as a 3D profile (suffix {proj} = 3d) and projected onto the same plane as the maps from which projected quantities were generated (suffix {proj} = 2d). When integrating the profiles to get total quantities, one should multiply the suffix {proj} = map and suffix {proj} = 2d profiles with the bin area and the suffix {proj} = 3d profiles with the bin volume. When multiplying the profiles with each other (for example, to obtain the total HI or H2 mass profiles), one should always multiply profiles of the same projection type.

The galaxy selection was designed to be complete both in stellar and in gas mass, i.e., a galaxy needs to either exceed the minimum stellar OR the minimum gas mass. For the original Illustris and TNG100, those limits were both set to $2 \times 10^8 M_\odot$. Please note that this is a rather aggressive limit, including galaxies that are resolved by only a few hundred particles. Depending on the application, it may well be wise to make more conservative mass cuts. For TNG300, the stellar mass cut is $5\times 10^{10}M_{\odot }$, the gas mass cut is $5\times 10^{9}M_{\odot }$. The stellar mass cut was chosen to be relatively high to reduce the otherwise very large dataset, and because that stellar mass range is well covered by TNG100.

In the listings below, Ngal denotes the number of subhalos (galaxies) in the file, and Nbin the number of radial bins for the profiles.

Dataset Shape/Dimensions Units Description
id_subhalo Ngal - Subfind IDs of the subhalos.
id_group Ngal - FOF IDs of the groups the subhalos belong to.
is_primary Ngal - Whether the galaxies are the primary subalo (central galaxy) of their group or a satellite.
m_neutral_H Ngal $M_\odot$ The total neutral hydrogen mass (including all bound gas cells). Note that the neutral fraction is determined by the simulation (that is, by the Springel & Hernquist 2003 ISM model for cells above the star formation threshold), and does not depend on the HI/H2 model. The HI and H2 masses of volumetric models should sum to the total neutral mass, in the map-based models this is not exactly true due to inaccuracies when summing over maps.
m_hi_{model}_{type} Ngal $M_\odot$ The total HI mass (including all bound gas cells) according to the respective HI/H2 model.
m_h2_{model}_{type} Ngal $M_\odot$ The total H2 mass (including all bound gas cells) according to the respective HI/H2 model.
profile_bins Ngal, Nbin $\rm{kpc}$ The outer edge of the radial profile bins for each galaxy. The inner edge of the innermost bin is zero. All profiles are based on the same binning scheme.
profile_bins_area Ngal, Nbin $\rm{kpc}^2$ The area covered by each profile bin if the profile is a projected profile ("2d" or "map" in the profile name). The area can easily be computed from the bins but is given for convenience.
profile_bins_volume Ngal, Nbin $\rm{kpc}^3$ The volume of each profile bin if the profile is a 3D profile ("3d" in the profile name). The volume can easily be computed from the bins but is given for convenience.
profile_gas_rho_{proj} Ngal, Nbin $M_\odot / \rm{kpc}^3$ The total gas density profile.
profile_stars_rho_{proj} Ngal, Nbin $M_\odot / \rm{kpc}^3$ The stellar mass density profile.
profile_sfr_{proj} Ngal, Nbin $M_\odot / \rm{kpc}^3 / {\rm yr}$ The star formation rate profile.
profile_f_neutral_H_{proj} Ngal, Nbin - The neutral hydrogen fraction profile, i.e., the mass in neutral hydrogen divided by the total gas mass in each bin. To obtain a profile of the neutral gas density, multiply with profile_gas_rho.
profile_f_mol_{model}_{type}_{proj} Ngal, Nbin - The molecular fraction in radial bins, i.e., the mass in H2 divided by the mass in neutral hydrogen. To obtain the molecular mass profile, multiply profile_gas_rho, profile_f_neutral_H, and profile_f_mol. To get the HI mass, apply the same multiplication but with 1 - profile_f_mol.

In addition, the config/ group contains a number of metadata attributes giving details of the analysis procedure:

Attribute Units Description
sim - Simulation name.
snap_idx - Snapshot number.
snap_z - Redshift of snapshot.
Mstar_min $M_\odot$ Minimum stellar mass (total mass bound to the subhalo) of galaxies to be extracted. None indicates no limit. Note that the stellar and gas mass limits are applied inclusively, meaning that a galaxy needs to have either the desired stellar or gas mass, not both.
Mstar_max $M_\odot$ Maximum stellar mass of a galaxy. See comment about Mstar_min above.
Mgas_min $M_\odot$ Minimum gas mass of a galaxy. See comment about Mstar_min above.
Mgas_max $M_\odot$ Maximum gas mass of a galaxy. See comment about Mstar_min above.
map_range_min $\rm{kpc}$ The minimum radial extent of maps in physical kpc. The map size is the maximum of this number and the sizes determined from the stellar and gass half-mass radii (see map_range_rgas and map_range_rstr).
map_range_rgas - Multiple of gas half-mass radius used to determine the map size (see comment on map_range_min above).
map_range_rstr - Multiple of stellar half-mass radius used to determine the map size (see comment on map_range_min above).
map_r_npix - The number of pixels used in the maps (the total number of pixels is the square of this number).
map_smoothing_factor - This factor multiplies the smoothing length used to create projected maps. By default, the factor is 1 in which case the smoothing corresponds to a Gaussian kernel with a width of half the cell size.
profile_nbins - The number of bins in the profile, i.e. Nbin in the table above.
profile_bin_min $\rm{kpc}$ The radius of the outer edge of the innermost bin. This number is fixed in physical kpc because it has to do with the resolution of the simulation rather than the size of the galaxy.
profile_range_min $\rm{kpc}$ The minimum extent of the profiles in physical kpc. The outermost bin is the maximum of this number and the sizes determined from the stellar and gass half-mass radii (see profile_range_rgas and profile_range_rstr). The profile is binned into profile_nbins linearly spaced bins between profile_bin_min and the outermost edge.
profile_range_rgas - Multiple of gas half-mass radius used to determine the profile extent (see comment on profile_range_min above).
profile_range_rstr - Multiple of stellar half-mass radius used to determine the profile extent (see comment on profile_range_min above).
uv_escape_frac - The escape fraction used in the UV computation (a number between 0 and 1, 0.1 by default).
uv_ngrid - The size of the 3D grid used for the Fourier transform in the UV computation.

### (j) Barred Galaxies Properties and Evolution

Two catalogs are available which describe the existence, and properties, of galatic bars. They are from Rosas-Guevara+ (2020) and Zhao+ (2020), respectively.

The first catalog contains the properties of galaxy bars, and their evolution in time, of the disk galaxy sample analyzed in Rosas-Guevara+ (2020), to which citation is requested if you use this data.

Simulation and snapshot coverage:

• Available for: TNG100-1, redshift zero.
• Computed only for massive disk galaxies, defined as those with stellar mass M* > 1010.4 Msun, and with stellar (D/T + B/T) > 0.7, as determined by the kinematic circularity decomposition method of Genel+15.
• There are 270 galaxies which satisfy these criteria.

The first dimension of each array corresponds to a particular galaxy, and the second dimension to the 100 time snapshots. Each bar-related property is therefore given along the main progenitor branch of each galaxy. The only exception is the Bartype field with a length equal to the number of galaxies at z=0. In general, values equal to NaN mean that the calculation was not performed at this particular snapshot, and thus should be ignored. The available fields are:

Dataset Units Description
SubfindID - The Subfind ID of the main progenitor of the disc galaxy sample. If untracked at this snapshot, the value is -1.
TabAmax2 - The strength of the bar, i.e. the maximum of A2 (the second term of the Fourier decomposition of the face-on stellar surface density see Eq. 2 in the paper) at each snapshot and for each galaxy.
TabRpeak pkpc The location of the peak of A2, used as a proxy of the bar length.
TabRtheta pkpc The maximum radius where the phase of A2 is constant (see Eq.3 in the paper).
Bartype - Values are: 0 for strong bars, 1 for weak bars, 2 for unbarred galaxies in the control sample (bar strength <0.2 at z=0), and -1 for the remainder of the galaxies.
Tabtnorm - The normalized time since the bar formation time (see Eq.4 in the paper).

This catalog was extended to the TNG50-1 simulation, as analyzed in Rosas-Guevara+ (2022), to which citation is requested if you use this data.

Simulation and snapshot coverage:

• Available for: TNG50-1 (six snapshots), z=0, 0.5, 1, 2, 3, 4.
• Computed only for massive disk galaxies, defined as those with stellar mass M* > 1010.0 Msun, and with stellar (D/T + B/T) > 1/2.
• There are 1062 galaxies (across all snapshots) which satisfy these criteria.

The available fields are:

Dataset Units Description
SubfindID - The Subfind ID of the main progenitor of the disc galaxy sample. If untracked at this snapshot, the value is -1.
TabAmax2 - The strength of the bar, i.e. the maximum of A2 (the second term of the Fourier decomposition of the face-on stellar surface density).
TabRbar pkpc The size of the bar.
Bartype - Values are: 1 for barred galaxies, and 0 for unbarred galaxies.
TabMstar Msun The stellar mass of the galaxy.
MatchingFlag - Equals 1 if the galaxy classification is the same as in the Zana et al. (2022) catalog, otherwise 0.

The second catalog contains measurements of bar properties of the galaxy sample analyzed in Zhao+ (2020), to which citation is requested if you use this data.

Simulation and snapshot coverage:

• Available for: TNG100-1, redshift zero.
• Relatively high-mass, disk galaxies only, defined as those with stellar mass $M_\star > 10^{10} \rm{M}_{\rm sun}$ (within 30 kpc), and with the κrot parameter >= 0.5, measuring the fraction of kinetic energy in ordered rotation, as defined by Sales+10.
• There are 1179 galaxies which satisfy this criterion.

The available fields are:

Dataset Units Description
gal_ID - The Subfind ID of the galaxy (in snapshot 99, correspoding to z=0).
stellar_mass log Msun Stellar mass of host galaxy measured within a sphere of 30 kpc radius centered on the galaxy.
krot - The fraction of kinetic energy in ordered rotation, i.e. the mass-weighted average value of $v_\phi^2 / v^2$, taking the ratio of azimuthal to total velocity for each star particle, measured within 30 kpc.
epsilon_max - The maximum ellipticity.
R_max kpc Bar size measured at maximum ellipticity.
R_0.85max kpc Bar size defined as the radius where the ellipticity declines to 85% of the maximum value.
R_0.85max_lowerr kpc Lower error caused by inner boundary and pixel size.
R_0.85max_uperr kpc Upper error caused by inner boundary and pixel size.

### (k) SDSS ugriz and UVJ Photometry/Colors with Dust

This catalog contains synthetic stellar photometry (i.e. colors) including the effects of dust obscuration. These correspond to the fiducial dust model of Nelson+ (2018a) (i.e. Model C), to which citation is requested if you use this data. Two separate catalogs are available: one for SDSS ugriz (rest-frame) bands, and one for UVJ (rest-frame). The latter was used in the analysis of Donnari+ (2019).

For SDSS ugriz: Simulation and snapshot coverage:

• Available for: TNG100-1.
• Available for: TNG300-1.
• For each, redshifts: z=0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1.0, 1.5, 2.0, 3.0 (one file per snapshot).
• All subhalos.

For UVJ: Simulation and snapshot coverage:

• Available for: TNG100-1.
• Available for: TNG300-1.
• For each, redshifts: z=0, 0.75, 1.0, 1.75, 2.0, 2.2 (one file per snapshot).
• All subhalos.

In the single HDF5 file per snapshot, there are two datasets: subhaloIDs gives the list of subhalo indices which have been computed (this is redundant, and this array equals [0,1,2,...,nSubhalos-1] exactly.), and either Subhalo_StellarPhot_p07c_cf00dust_res_conv_ns1_rad30pkpc with a shape of [nSubhalos,8,12] (for ugriz), or Subhalo_StellarPhot_UVJ_p07c_cf00dust_res_conv_z_30pkpc with a shape of [nSubhalos,3] (for UVJ).

The dimensions 8 or 3 corresponds to photometric bands, in order: sdss_u, sdss_g, sdss_r, sdss_i, sdss_z, wfc_acs_f606w, des_y, jwst_f150w or u, v, 2mass_j. Note that the wfc, des, and jwst bands were for testing only and should not be used. The high redshift SDSS files have only 5 photometric bands saved, which are (in order): sdss_u, sdss_g, sdss_r, sdss_i, sdss_z.

For the SDSS ugriz catalogs, the dimension 12 corresponds to twelve different projection directions (i.e. observer view angles), since the dust attenuation mode is view-dependent. In general, one can simply take the first entry for each subhalo, or a random entry for each subhalo. For the UVJ catalogs, only one projection direction is computed (along the z-axis of the box).

The units of these datasets are always AB magnitudes, and the bands are always rest-frame. Check carefully if the magnitudes are apparent (usually the case), or absolute (e.g. at z=0). Only stars within a 3D radial aperture of 30 physical kpc are included.

Additional information is available in the header attributes of the HDF5 file.

### (l) SKIRT Synthetic Images and Optical Morphologies

This catalog contains synthetic images and the corresponding morphological measurements, including Gini-M20, CAS and MID statistics, as well as 2D Sersic fits. The full description of the synthetic images and measurements can be found in Rodriguez-Gomez+ (2019), to which citation is requested if you use this data. Full details are not repeated, for which the user is directed to the paper.

Synthetic images and measurements are available separately for: "pogs" and "sdss", designed to match Pan-STARRS and SDSS, respectively.

Simulation and snapshot coverage:

• Available for: TNG50-1, TNG100-1, and Illustris-1.
• For each, redshifts: z=0, z=0.05.
• Restricted to subhalos with (total) stellar mass M* > 109.5 solar masses.

• The entire dataset (for one survey/snapshot combination) can be downloaded as a single tar file (above).
• The FITS and PNG images can be downloaded separately for each subhalo for which they are available through the API, similar to the original Illustris FITS files. For example, /api/TNG100-1/snapshots/99/subhalos/397866/skirt/broadband_sdss.fits downloads the broadband FITS file matched to the SDSS survey, for the central subhalo of FoF group #500 in TNG100-1 at redshift zero.

In the single tar collection, the files "morphs_i.hdf5" and "morphs_g.hdf5" (and "morphs_r.hdf5" for SDSS only) contain statmorph morphological measurements in the observed i-band, g-band, (and r-band), respectively (using Pan-STARRS or SDSS filter curves, depending on the dataset), and "subfind_ids.txt" contains the associated subhalo IDs. For a description of the measurements, see Section 4 of Rodriguez-Gomez+ (2019). In general, only morphological measurements with flag == 0 are reliable. If interested in parameters derived from the Sérsic fits, then flag_sersic == 0 should be imposed as well. In addition, only measurements with S/N > 2.5 (included in the catalog as sn_per_pixel) should be trusted. See Section 5 of the paper, for more details.

The idealized synthetic images themselves are available in FITS format. The dimensions of each image are NxNx4, where N is the number of pixels in each dimension and the 4 layers correspond to the observed g,r,i,z broadband filters of Pan-STARRS or SDSS. Note that the SDSS z-band data should be used with caution (they are reasonable for morphologies, but not for magnitudes and colors), since the long-wavelength tail of the SDSS z filter curve extends beyond the wavelength range of the SKIRT runs (clipped at 0.95 microns in the rest frame).

These synthetic broadband images are "idealized", meaning that some realism may need to be added before analyzing them. Most importantly, they should be convolved with an adequate PSF (for most purposes, a 2D Gaussian with the same FWHM as the observations should suffice) and background shot noise should be added. In general, Gaussian noise with sigma_sky ~ 1/20 (1/10) for Pan-STARRS (SDSS) represents a good compromise between observational realism and detection strength. Note that the image units are electrons/s/pixel. For more details, see Section 3.4 of the paper.

In addition to the FITS files, PNG images are also available. These are analogous to Fig. 4 of Rodriguez-Gomez+ (2019), such that different panels show different morphological diagnostics. These figures can be used to quickly inspect the morphology of a given galaxy.

Notes: The z=0 images and measurements were created by assuming that the galaxies are actually located at z=0.0485 (this determines the pixel scale, etc.). Galaxy sizes (e.g. "rhalf", "sersic_rhalf", "rpetro", "rmax") are given in pixels. To convert to simulation units (ckpc/h), note that the scale of each pixel at z=0.0485 corresponds to 0.174 ckpc/h for Pan-STARRS and 0.276 ckpc/h for SDSS.

2022 addition: KiDS Survey Mock Images. A new, third set of images were generated with the same procedure as in Rodriguez-Gomez et al. (2019), except that:

1. the field-of-view is fixed for all images (does not scale with galaxy size), and
2. neighboring galaxies (from the same FoF group) were included.

The image settings are consistent with the Kilo-Degree Survey (KiDS). In particular, each FITS file has 4 layers corresponding to OmegaCAM g,r,i,z filters.

Simulation and snapshot coverage:

• Available for: TNG50-1.
• Redshift: z=0.0337 (snapshot 96) only.
• Restricted to subhalos with (total) stellar mass M* > 108.0 solar masses.

There are three projections for each galaxy (xy, yz, zx). The pixel scale: 0.2 arcsec/pixel, corresponding to 138.9 pc (physical) per pixel at z = 0.0337. The dimensions of each image are 240x240 pixels (33.34 kpc per side). Note that the most massive galaxies may extend beyond the FoV.

The image units are ADU/s, just like in the real survey, and the zeropoint is zero, i.e. mag = -2.5 * log10(data). The images are "idealized", i.e. they have not been convolved with a PSF and they do not include background or shot noise. See Section 2.4 from Guzmán-Ortega et al. (2022) for information on how to apply realism. Complete details are available in that paper, to which citation is requested if you use this dataset.

### (m) Disk Galaxy Kinematic Decompositions

This catalog contains mass fractions of galactic disk structures which have been kinematically identified and decomposed by applying the "auto-GMM" (Gaussian mixture model) technique. The full description of the synthetic images and measurements can be found in Du+ (2019) and Du+ (2020), to which citation is requested if you use this data.

Simulation and snapshot coverage:

• Available for: TNG100-1, redshift zero and TNG50-1, redshift zero only.
• Computed only for massive "disk galaxies", defined as those subhalos with a high relative fraction of their kinetic energy in ordered rotation (Krot > 0.5, measured within 30 kpc), and high stellar mass (M* > 1010 Msun for TNG100-1, and M* > 109 Msun for TNG50-1).
• There are 3931 subhalos in TNG100-1 (2831 in TNG50-1) which satisfy this criterion.

The classification 1 (cls1) decomposes each galaxy into a cold disk, warm disk, bugle, and halo. The classification 2 (cls2) isolates an additional structure with moderate rotation, but compact morphology, namely the disky bulge that is the counterpart of the so-called pseudo bulge in observations (see Du et al. 2020). The supplementary catalog file has the following fields:

Dataset Description
SubhaloID Subhalo index/ID corresponding to this entry (TNG100-1 at snapshot 99).
{method}_{aperture}/StellarMass Total galaxy stellar mass within the given radius.
{method}_{aperture}/ColdDisk Mass fraction for the kinematically identified "cold disk" component.
{method}_{aperture}/WarmDisk Mass fraction for the kinematically identified "warm disk" component.
{method}_{aperture}/DiskyBulge Mass fraction for the kinematically identified "disky bulge" component.
{method}_{aperture}/Bulge Mass fraction for the kinematically identified "bulge" component.
{method}_{aperture}/Halo Mass fraction for the kinematically identified "halo" component.
{method}_{aperture}/Spheroids Total mass fraction for kinematically identified spheroid components, defined as the sum of the Bulge and Halo.
{method}_{aperture}/Disks Total mass fraction for kinematically identified disk components, defined as the sum of the ColdDisk, WarmDisk, and DiskyBulge.

Here {method} can have the values class1,class2, corresponding to the two classification techniques, and {aperture} can have the values 1re,3re,allstars, corresponding to using stars within 1 times r_e, 3 times r_e, or in the entire subhalo (where r_e is the 3D stellar half-mass radius).

Associated PNG or PDF images, showing the decomposed structures, can be downloaded here: PNG .tar.gz image set, or PDF .tar.gz image set. These archives contain the following directories:

• "total_level": images of all stars.
• "SD_level": images of the spheroidal and disky structures.
• "structures_level_cls1/2": images of the kinematic structures defined in Du+2020. cls1 and cls2 correspond to classifications 1 and 2, respectively.
• "components_level_cls1/2": images of the multiple Gaussian components from the auto-GMM, that correspond to sub-structures.

### (n) L-Galaxies Semi-Analytical Model

This catalog contains the results of the L-Galaxies semi-analytical model run on the TNG simulation volumes. Specifically, of the latest public version of this model, as described in Henriques+2015 (H15). The SAM itself is run on the merger trees of the dark matter only analog boxes of TNG100-1 and TNG300-1.

This catalog was produced in Ayromlou+ (2020), where these results were first presented, and to which citation is requested if you use this data.

Simulation and snapshot coverage:

• Available for: TNG100-1.
• Available for: TNG300-1.
• All snapshots, and all (L-Galaxies) galaxies, covering all TNG subhalos.

The outcome of L-Galaxies is a population of galaxies which reside within the halos and subhalos of TNG100-1-Dark or TNG300-1-Dark, respectively. These have been cross-matched to the subhalos of the baryonic TNG100-1 and TNG300-1 runs (as well as the subhalos in the corresponding -Dark runs). As a result, the galaxy properties predicted by L-Galaxies can be directly compared with those in TNG, on an object by object basis.

There is one HDF5 file per TNG snapshot, with the following datasets in the /Galaxy/ group:

Dataset Shape Units Description
Type N - Indicates whether the galaxy is a "central" (at the center of its FOF group, type=0), a "satellite" (within its own subhalo but not at the center of its FOF group, type=1), or an "orphan" (a satellite that has lost its subhalo, type=2).
SubhaloIndex_TNG N - The unique subhalo index hosting this galaxy in the IllustrisTNG (baryonic) simulation. This value shall be used to match the galaxy to an object in the IllustrisTNG simulation. The value is -1 if there is no match for this subhalo in the IllustrisTNG.
SubhaloIndex_TNG-Dark N - The subhalo index hosting this galaxy in the IllustrisTNG dark matter only (IllustrisTNG-Dark) simulation. This value shall be used to match the galaxy to an object in the IllustrisTNG-Dark simulation. The value is -1 if there is no match for this subhalo in the IllustrisTNG-Dark.
Central_M_Crit200 N $10^{10} \rm M_{\odot}/h$ The virial mass (as defined by m_crit200) of the FOF group the galaxy resides in.
Central_R_Crit200 N $\rm ckpc/h$ The virial radius (as defined by r_crit200) of the FOF group the galaxy resides in.
DistanceToCentralGal N,3 $\rm ckpc/h$ The distance (along each dimension separately) between this galaxy and the galaxy at the centre of the FoF group.
Pos N,3 $\rm ckpc/h$ Spatial (x,y,z) position of the galaxy. For Type == 0 and Type == 1 galaxies, this corresponds to the position of the hosting subhalo, while for Type == 2 galaxies this is set by the semi-analytic treatment for infalling satellite orbits.
Vel N,3 $\rm km/s$ Spatial velocity of the galaxy.
SuhaloLen N - Number of particles associated with the subhalo hosting this galaxy.
M_Crit200 N $10^{10} \rm M_{\odot}/h$ Virial mass (as defined by m_crit200) of the subhalo this galaxy was in when it was last a type 0 galaxy. I.e. current virial mass for type 0 galaxies, and infall virial mass for type 1,2 galaxies.
R_Crit200 N $\rm ckpc/h$ Virial radius (as defined by r_crit200) of the subhalo this galaxy was in when it was last a type 0 galaxy. I.e. current virial radius for type 0 galaxies, infall virial radius for type 1,2 galaxies.
Vvir N $\rm km/s$ Virial velocity of the subhalo this galaxy was in when it was last a type 0 galaxy. I.e. current virial velocity for type 0 galaxies, infall virial velocity for type 1,2 galaxies.
Vmax N $\rm km/s$ Maximum rotational velocity of the subhalo of this galaxy. This property continues to be updated even after the galaxy becomes a type 1.
ColdGasSpin N,3 $\rm (kpc/h)(km/s)$ The spin of the cold gas disc.
StellarDiskSpin N,3 $\rm (kpc/h)(km/s)$ The spin of the stellar disc.
InfallVmax N $\rm km/s$ Maximum rotational velocity of the suhalo of this galaxy at the time of infall (same as Vmax for type 0 galaxies).
InfallVmaxPeak N $\rm km/s$ Maximum past rotational velocity of the subhalo of this galaxy.
InfallSnap N - Most recent (largest) snapnum at which this galaxy's type changed from 0 to 1 or 2.
InfallHotGasMass N $10^{10} \rm M_{\odot}/h$ Mass in hot gas at the time of infall (same as hotGas for type 0 galaxies).
HotGasRadius N $\rm ckpc/h$ Radius out to which hot gas extends: Rvir for type 0; 0 for type 2; maximum radius out to which hot gas is not stripped for type 1.
OriMergTime N $\rm{yr}$ Estimated dynamical friction time (in years) when the merger clock was set. Only calculated for type 2 galaxies.
MergTime N $\rm{yr}$ Estimated remaining merging time (in years). OriMergeTime - time since the merger clock is set. Only calculated for type 2 galaxies.
ColdGasMass N $10^{10} \rm M_{\odot}/h$ Mass in the cold gas disc.
StellarMass N $10^{10} \rm M_{\odot}/h$ Total mass in stars in the disc and the bulge together.
StellarDiskMass N $10^{10} \rm M_{\odot}/h$ Mass of stars in the disk.
StellarBulgeMass N $10^{10} \rm M_{\odot}/h$ Mass of stars in the bulge.
HotGasMass N $10^{10} \rm M_{\odot}/h$ Mass in hot gas.
EjectedMass N $10^{10} \rm M_{\odot}/h$ Mass in the ejected gas component.
BlackHoleMass N $10^{10} \rm M_{\odot}/h$ Mass of the central black hole.
HaloStellarMass N $10^{10} \rm M_{\odot}/h$ Mass in intra-cluster (ICL) stars.
MetalsColdGasMass N $10^{10} \rm M_{\odot}/h$ Mass in metals in the cold gas disk.
MetalsStellarMass N $10^{10} \rm M_{\odot}/h$ Mass in metals in stars in the disk and the bulge together.
MetalsBulgeMass N $10^{10} \rm M_{\odot}/h$ Mass in metals in stars in the bulge.
MetalsDiskMass N $10^{10} \rm M_{\odot}/h$ Mass in metals in stars in the disk.
MetalsHotGasMass N $10^{10} \rm M_{\odot}/h$ Mass in metals in hot gas.
MetalsEjectedMass N $10^{10} \rm M_{\odot}/h$ Mass in metals in the ejected mass component.
MetalsHaloStellarMass N $10^{10} \rm M_{\odot}/h$ Mass in metals in intra-cluster (ICL) stars.
PrimordialAccretionRate N $\rm M_{\odot}/yr$ Accretion rate of primordial gas.
CoolingRadius N $\rm ckpc/h$ The radius within which the cooling time scale is shorter than the dynamical timescale.
CoolingRate N $\rm M_{\odot}/yr$ Cooling rate of hot halo gas.
coolingRate_beforeAGN N $\rm M_{\odot}/yr$ Cooling rate of hot halo gas, if there had been no AGN feedback.
QuasarAccretionRate N $\rm M_{\odot}/yr$ Rate at which cold gas is accreted into the central black hole in the quasar mode.
RadioAccretionRate N $\rm M_{\odot}/yr$ Rate at which hot gas is accreted into the central black hole in the radio mode.
StarFormationRate N $\rm M_{\odot}/yr$ Star formation rate.
StarFormationRateBulge N $\rm M_{\odot}/yr$ Star formation rate in bulge.
XrayLum N $\log_{10} \rm (erg/sec)$ X-Ray luminosity of the hot halo gas.
BulgeSize N $\rm ckpc/h$ Half mass radius of galaxy bulge.
StellarDiskRadius N $\rm ckpc/h$ Size of the stellar disk, 3x the scale length.
GasDiskRadius N $\rm ckpc/h$ Size of the cold gas disk.
CosInclination N $\rm{deg}$ Inclination of the galaxy. Derived from the angle between the total and z-axis stellar spins of the galaxy.
DisruptionOn N - Disruption history flag. If 0: galaxy merged onto merger center; 1: galaxy was disrupted before merging onto its descendant, matter went into ICM of merger center.
MergeOn N - Current merger state of the galaxy. If 0: merger clock not set yet; 1: type 1 galaxy with baryon mass > halo mass, separate dynamical friction time calculated; 2: this galaxy is type 2 and will merge into the merger center in the next snapshot; 3: this galaxy is type 1 and will merge into the central galaxy of the main halo in the next snapshot.
MagDust N,20 $\rm{mag}$ Rest-frame absolute magnitudes of the galaxy stellar light (dust extinction included). Description of the 20 bands are given below.
Mag N,20 $\rm{mag}$ Rest-frame absolute magnitudes of the galaxy stellar light. Description of 20 bands are given below.
MagBulge N,20 $\rm{mag}$ Rest-frame absolute magnitudes of the stellar light of the galaxy bulge. Description of the 20 bands are given below.
MassWeightedAge N $10^9 \rm \, yr$ The age of this galaxy, weighted by mass of its components.

Note: For all units, ckpc stands for kpc length scale in comoving units. Multiply by the scale factor $a=1/(1+z)$ to convert to physical units. Additional information is available in the header attributes of the HDF5 file.

For each of the three Mag* datasets, all magnitudes are rest-frame, absolute (AB). The twenty entires correspond to (in order):

Entry Band
0 Johnson-Bessel U filter ($\lambda = 0.36\rm \mu m$).
1 Johnson-Bessel B filter ($\lambda = 0.435\rm \mu m$).
2 Johnson-Bessel V filter ($\lambda = 0.55\rm \mu m$).
3 Cousins Rc filter ($\lambda = 0.64\rm \mu m$).
4 Cousins Ic filter ($\lambda = 0.79\rm \mu m$).
5 VISTA Z filter ($\lambda = 0.88\rm \mu m$).
6 VISTA Y filter ($\lambda = 1.02\rm \mu m$).
7 VISTA/2MASS J filter ($\lambda = 1.26\rm \mu m$).
8 VISTA/2MASS H filter ($\lambda = 1.60\rm \mu m$).
9 Johnson-Bessel K ($\lambda = 2.22\rm \mu m$) filter.
10 VISTA/2MASS Ks ($\lambda = 2.16\rm \mu m$) filter.
11 IRAC 3.6$\mu\rm{m}$ filter.
12 IRAC 4.5$\mu\rm{m}$ filter.
13 IRAC 5.8$\mu\rm{m}$ filter.
14 IRAC 8.0$\mu\rm{m}$ filter.
15 SDSS u filter ($\lambda = 0.355\rm \mu m$).
16 SDSS g filter ($\lambda = 0.469\rm \mu m$).
17 SDSS r filter ($\lambda = 0.617\rm \mu m$).
18 SDSS i filter ($\lambda = 0.748\rm \mu m$).
19 SDSS z filter ($\lambda = 0.893\rm \mu m$).

As an example, the following (python) code shows how this L-Galaxies catalog can be matched and compared to TNG galaxies from the group catalogs:

filePath = "sims.TNG/L75n1820TNG/postprocessing/LGalaxies/LGalaxies_099.hdf5"

with h5py.File(filePath,'r') as f:
mstar = f['Galaxy/StellarMass'][()]
match_ids = f['Galaxy/SubhaloIndex_TNG'][()]

w = np.where(match_ids >= 0)

mstar_matched = np.zeros( mstar_tng.shape, dtype=mstar.dtype )
mstar_matched.fill(np.nan)

mstar_matched[match_ids[w]] = mstar[w]


The resulting array mstar_matched has the same size as mstar_tng (which should be loaded from the TNG subhalo catalog at this snapshot, e.g. SubhaloMassInRadType[i,4]), and the value mstar_matched[i] can be compared directly to mstar_tng[i].

### (o) Lensing Profiles

This catalog contains lensing profiles of halos/subhalos, as described in Renneby+20 to which citation is requested if you use this data.

Simulation and snapshot coverage:

Lensing profiles have been computed for all galaxies with $M_\star \geq 10^{8.2} h^{-2} M_\odot$ in the baryonic runs, and their matched gravity-only counterparts in the dark matter only runs. In total there are profiles for 417,535 galaxies for TNG300-1 and 334,606 matched substructures in TNG300-1-DMO (matching rate of ~80%). For TNG100 there are 35,270 galaxies in TNG100-1 and 27,088 galaxies in TNG100-1-DMO (~77% matched). The DMO matches are made with the LHaloTree-algorithm.

We have measured the signal radially for field projections along the x, y and z axes in 40 log10-equidistant bins between 30 kpc/h and 3 Mpc/h, and have separate "core terms" where we store all particle/cell counts below 30 kpc/h.

There is one HDF5 file per simulation/snapshot, with the following datasets:

Group/Dataset Shape/Dimensions Units Description
/Header/ - Msun/h Group contains one attribute: MPart, which gives the (constant) dark matter particle mass for this simulation.
/ParticleCountCylinderGeometry/ - ckpc/h Group contains three attributes: MaxRad, MinRad, and NRadialBins, which give the shell binning configuration (note: comoving).
/ProjectedParticleShells/{DM,Gas,SMBHs,StarsAndWinds}CoreProjectedAlong{X,Y,Z} Nsubhalos varies Counts of particles/cells in the "core", i.e. at distances smaller than the innermost bin (30 kpc/h). Note that for DM alone (!) we store unweighted counts, so these must be multiplied by the MPart attribute of the Header group in order to yield units of mass. All other components {Gas, SMBHs, StarsAndWinds} are already in mass units. For each of the three projection directions X,Y,Z.
/ProjectedParticleShells/{DM,Gas,SMBHs,StarsAndWinds}CountsRadialShellsProjectedAlong{X,Y,Z} Nsubhalos,40 varies Counts of particles/cells in each of the 40 radial shells (see above). Note that for DM alone (!) we store unweighted counts, so these must be multiplied by the MPart attribute of the Header group in order to yield units of mass. All other components {Gas, SMBHs, StarsAndWinds} are already in mass units. For each of the three projection directions X,Y,Z.
/Subgroups/SubhaloIDs Nsubhalos - The Subfind/subhalo IDs contained in the catalog.
/Subgroups/LBGInProjectionAlong{X,Y,Z} Nsubhalos - Indication if the subhalo is a "locally brightest galaxy" (LBG), i.e. if it is the brightest galaxy in the r-band (with dust extinction applied) within a cylinder of radius 1 pMpc and LOS distance < 1000 km/s in redshift at z=0. A galaxy/subhalo has its proper ID written out if it is an LBG, and -1 otherwise for the x, y and z projections. Note: the same galaxy can be an LBG or not depending on the projection axis X,Y,Z. Note: Only available in the TNG300-1 file.

Finally, we provide a supplementary .zip file for download. It contains several items:

• an example selection for TNG300 in ”tng300_example_selection_galaxies_mstar_10p11_10p11p2_Msun.hdf5” and an example compute script in ”compute_delta_sigma_signal_example_script.py”.
• Lensing profiles columnated in .txt-files where the first column holds the radius r [h^-1 Mpc], the second column the model Delta Sigma [h M_sun pc^-2], the third column the upper bootstrapped 95 % model Delta Sigma [h M_sun pc^-2], and the fourth column the lower bootstrapped 95 % model Delta Sigma [h M_sun pc^-2]. They are stored in folders referring to the reference of the dataset we are attempting to model.
• Baryonic deformations of the lensing profiles are stored in subdirectories ”BaryonicEffects” for the van Uitert+16 and Velliscig+17 datasets. Note that we use matched subhaloes only and restrict ourselves to centrals.
• The corresponding SAM-profiles are found in subdirectories for the different datasets under the folder ”SAMs”. The title of the file holds the parameter settings the model was run on. Note that the Guo+11 model parameter values for the Henriques+15 model is referred to as ”guo11”, whereas the original Guo+11 model is referred to as ”guo11_makefile_switch”.

### (p) Aperture Masses (Total and Stellar)

Measurements of 3D total and stellar masses within physical apertures, accounting for the resolution elements that are gravitationally bound to a subhalo according to the SUBFIND algorithm within 100 (physical) kpc, 30 pkpc, 10 pkpc, and 5 pkpc. For complete definitions on the calculation of each value, see the following table and Engler+ (2021a) where they were first presented. Citation to this paper is requested if you use these data catalogs.

Simulation and snapshot coverage:

Group Name Units Description
/Snapshot_N/SubfindID - The Subfind IDs these values correspond to at this snapshot.
/Snapshot_N/SubhaloTotalMass_in_r{X}pkpc Msun Sum of the masses of all particles (gas, dark matter, stars, black holes) within the subhalo inside a 3D aperture of {X} physical kpc.
/Snapshot_N/SubhaloStellarMass_in_r{X}pkpc Msun Sum of the masses of all stars within the subhalo inside a 3D aperture of {X} physical kpc.

Note: these are original values directly from the simulation. No "resolution rescalings" have been applied.

For all measurements, apertures {X} exist for X = 5, 10, 30, 100 (pkpc).

### (q) Halo Structure

Measurements of halo structural properties such as concentrations, shapes, formation times, and so on. All are computed using the dark matter particles that both (i) belong to the central/primary Subfind subhalo, and; (ii) are within R200c of the halo. For complete definitions of each value, see the following table and Anbajagane+ (2021) where they were presented. Citation to this paper is requested if you use these data catalogs.

Simulation and snapshot coverage:

• Available for the highest resolution run of each TNG box, both baryonic and dark-matter only: TNG50-1, TNG100-1, TNG300-1, TNG50-1-Dark, TNG100-1-Dark, TNG300-1-Dark.
• All twenty full snapshots (i.e. $z=0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1.0, 1.5, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12$).
• Restricted to halos with total masses greater than $10^{8.8} M_\odot$ (for TNG50), $10^{9.8} M_\odot$ (for TNG100), and $10^{10.8} M_\odot$ (for TNG300).

Dataset Name Dimensions Units Description
GroupFlag Ngroups - Flag that indicates whether properties were computed for a given halo. GroupFlag == 1 for all available halos and GroupFlag == 0 for halos that were omitted because they were below the chosen halo mass threshold.
M200c Ngroups log Msun The log halo mass, $\log_{10}(M_{\rm 200c})$. Equal to the existing Group_M_Crit200 field in the group catalogs.
sigma_1D Ngroups, 3 physical km/s The velocity dispersion, computed as the standard deviation of the velocity distribution, for the x, y, and z directions.
sigma_3D Ngroups physical km/s The isotropic velocity dispersion constructed from the sigma_1D quantities as $\sigma_{\rm 3D} = \sqrt{\frac{\sigma_x^2 + \sigma_y^2 + \sigma_z^2}{3}}$.
c200c Ngroups - The halo concentration, $c = R_{\rm 200c}/R_{\rm s}$, where $R_{\rm s}$ is computed by fitting an NFW profile to the DM density profile. We only compute c200c for halos with at least 2000 DM particles, so some halos with GroupFlag == 1 will still have missing c200c measurements.
a_form Ngroups - The formation time of the halo, defined by the relation $M_{\rm 200c}(a = a_{\rm form}) = M_{\rm 200c}(a = 1)/2$. This quantity is available only for catalogs of the present epoch, z=0. The halo history is obtained by following the SUBLINK merger tree of the central/primary subhalo from a given halo.
s Ngroups - The minor-to-major axis ratio, $s = c/a$. The components $c$ and $a$ are eigenvalues of the quadrupole tensor of the particle positions and follow $a > b > c$.
q Ngroups - Same as $s$, but for the semimajor-to-major ratio, $q = b/a$.
s_vel Ngroups - The same as $s$, but for the quadrupole tensor of the particle velocities.
q_vel Ngroups - The same as $q$, but for the quadrupole tensor of the particle velocities.
M_acc_dyn Ngroups - The mass accretion rate, $d\ln M/d\ln a$, over one dynamical time as defined in Diemer+2017 (see equation 6). The halo history is obtained by following the SUBLINK merger tree of the central/primary subhalo from a given halo.
E_s Ngroups $M_{\odot} \rm (km/s)^2$ The energy content of the DM surface pressure, $E_s$, which is computed as in Shaw+ 2006 using the velocities of DM particles in the outer radial shell of the halo.
Mean_vel Ngroups, 3 physical km/s The mean velocity of DM particles in the x, y, and z directions.
f_Mass_Cen Ngroups - The fraction of a halo's DM mass within $R_{\rm 200c}$ that is contained in the central/primary SUBFIND subhalo.
R0p9 Ngroups physical Mpc The radius that encompasses 90% of all DM particles that belong to the central/primary SUBFIND subhalo and are also within $R_{\rm 200c}$ of the halo. This radius can be used to convert the surface pressure energy, $E_s$, back into the surface pressure, $P_s = E_s / (4\pi R_{\rm 0p9}^3)$.

Note: one file per snapshot. Be careful to use only entries with GroupFlag == 1.

### (r) Galaxy Morphologies (Deep Learning)

Probabilities that galaxies have certain visual-like morphologies, as determined by a machine learning algorithm. In the case of TNG50, classifications are provided at high redshift and are CANDELS-like, i.e. based on synthetic H-band galaxy images at CANDELS depth and resolution. In the case of TNG100, classifications are provided at low redshift, and are SDSS-like, based on synthetic r-band galaxy images with SDSS resolution and noise characteristics. For complete definitions on the calculation of each value, see the following table, Huertas-Company+ (2019), and Varma+ (2021), where they were first presented and used. Citation to these papers is requested if you use these data catalogs.

Simulation and snapshot coverage:

• Available for TNG50-1 (z=0.5, 1, 1.5, 2, 2.5, 3), and TNG100-1 (z=0, 0.05).
• Restricted to subhalos with $M_\star > 10^9 M_\odot$ (for TNG50 classifications), or $M_\star > 10^{9.5} M_\odot$ (for TNG100, i.e. 12,468 galaxies at z=0.05).

For TNG100 (SDSS-like):

Group Name Description
/Snapshot_N/SubhaloID The Subfind IDs these values correspond to at this snapshot.
/Snapshot_N/P_Late Probability that the galaxy is of late-type.
/Snapshot_N/Sigma_Late Uncertainty on P_Late.
/Snapshot_N/P_S0 Probability that the galaxy is a S0 (valid only for P_Late < 0.5).
/Snapshot_N/Sigma_S0 Uncertainty on P_S0.
/Snapshot_N/P_Sab Probability that the galaxy is a Sab (valid only for P_Late > 0.5).
/Snapshot_N/Sigma_S0 Uncertainty on P_Sab.

For TNG50 (CANDELS-like):

Group Name Description
/Snapshot_N/SubhaloID The Subfind IDs these values correspond to at this snapshot.
/Snapshot_N/P_Disk Probability that the galaxy has a disk-like morphology.
/Snapshot_N/P_Spheroid Probability that the galaxy has a spheroid-like morphology.
/Snapshot_N/P_Irr Probability that the galaxy has an irregular morphology.

Note: a Snapshot_N group exists for the above-mentioned snapshots (two for TNG100-1, six for TNG50-1).

### (s) Cosmic Web Distances (Disperse)

A post-processing identification of the topology of the cosmic web, using the DisPerSE code. This method provides an automatic identification of topological structures such as peaks, voids, walls, and in particular filaments. To do so, DisPerSE uses a set of discrete points (e.g. galaxies) to estimate a density field, and then identify the cosmic web. By definition critical points in this density field are nodes, and the unique integral lines between them are filaments: every filament starts and ends at a node, and saddle points are minima along the filaments.

For this catalog, the points used to define the cosmic web are galaxies. Specifically, subhalos with a minimum stellar mass of $10^{8.5} M_\odot$, which is designed to be roughly comparable to what you might be able to recover from an observational galaxy survey. The only other parameter of DisPerSE is the "persistence", which defines the robustness of each pair of critical points, in terms of the peak relative to background. For this catalog a persistence of $\sigma = 4$ has been chosen.

The physical properties presented in this catalog are cosmic web distances, between subhalos in the simulation and the nearest cosmic web structures of a given type. This allows for the identification, for example, of galaxies as a function of distance away from the centers of filaments, void galaxies, and so on.

For more details, see the DisPerSE paper Sousbie (2011). This catalog was developed as part of the work of Duckworth+ (2020a) and Duckworth+ (2020b). Citation to these three papers is suggested if you use these data catalogs. The codes to run DisPerSE on TNG and to derive quantities of interest are available on github.

Simulation and snapshot coverage:

• Available for the highest resolution run of TNG100 and TNG300 currently: TNG100-1, TNG300-1.
• Several full snapshots between redshift two and zero (i.e. $z=0, 0.1, 0.2, 0.3, 0.5, 1.0, 1.5, 2$).
• All subhalos.

Dataset Name Dimensions Units Description
subhalo_ID N_subhalos - Index corresponding to the subhalo in the standard TNG group catalogues. Since all subhalos are included, this is redundant, and equal to range(N_subhalos).
d_minima N_subhalos ckpc/h Distance to nearest minimum critical point (void).
d_saddle_1 N_subhalos ckpc/h Distance to to nearest 1-saddle point (i.e. critical point where one dimension is collapsing).
d_saddle_2 N_subhalos ckpc/h Distance to to nearest 2-saddle point (i.e. critical point where two dimensions are collapsing).
d_node N_subhalos ckpc/h Distance to nearest maximum critical point (node).
d_skel N_subhalos ckpc/h Distance to nearest filament segment (computed as the distance to the nearest segment midpoint).

Note: in the above, N_subhalos always refers to the number of subhalos in the group catalog at a particular snapshot. All distances are in code units.

### (t) Galaxy Morphologies (Kinematic) and Bar Properties

This catalog contains (i) kinematic decompositions of the stars of galaxies into different morphological components, and (ii) bar properties. Galaxies are decomposed in five morpho/kinematical components, namely a thin/cold disc, a thick/warm disc, a pseudo-bulge, a bulge and a halo, after an analysis of the stellar kinematics with the MORDOR code. In addition, a detailed catalogue of stellar bars is given, along with bar properties, based on a fourier analysis of the galactic stellar surface density. For complete definitions on the calculation of each value, see Zana+ (2022), where they were first presented and used. Citation to this paper is requested if you use these data catalogs.

Simulation and snapshot coverage:

• Available for TNG50-1 (all redshifts).
• Restricted to subhalos with $M_\star \gtrsim 10^9 M_\odot$ (corresponding to a minimum of $10^4$ star particles).

This catalogue is one file per simulation, containing many groups Snapshot_N, one per snapshot. The following datasets are included:

Group Name Shape Description
/Snapshot_N/SubhaloID {N_gal} The Subfind IDs these values correspond to at this snapshot.
/Snapshot_N/ThinDisc {3, N_gal} Thin/cold disc mass fraction $M_{\rm thin}/M_{*}$, average energy $\langle E/E_{\rm max} \rangle_{\rm thin}$, and average circularity $\langle j_{z}/j_{\rm circ} \rangle_{\rm thin}$, where $M_{*}$ is the total stellar mass of the subhalo, $E_{\rm max}$ the energy of the least bound, not-excluded stellar particle, $j_{z}$ the $z$-component of the angular momentum, and $j_{\rm circ}$ the circular angular momentum.
/Snapshot_N/ThickDisc {3, N_gal} Thick/warm disc mass fraction $M_{\rm thick}/M_{*}$, average energy $\langle E/E_{\rm max} \rangle_{\rm thick}$, and average circularity $\langle j_{z}/j_{\rm circ} \rangle_{\rm thick}$.
/Snapshot_N/PseudoBulge {3, N_gal} Pseudo-bulge disc mass fraction $M_{\rm pseudo-bulge}/M_{*}$, average energy $\langle E/E_{\rm max} \rangle_{\rm pseudo-bulge}$ , and average circularity $\langle j_{z}/j_{\rm circ} \rangle_{\rm pseudo-bulge}$.
/Snapshot_N/Bulge {3, N_gal} Bulge disc mass fraction $M_{\rm bulge}/M_{*}$, average energy $\langle E/E_{\rm max} \rangle_{\rm bulge}$, and average circularity $\langle j_{z}/j_{\rm circ} \rangle_{\rm bulge}$.
/Snapshot_N/Halo {3, N_gal} Halo mass fraction $M_{\rm halo}/M_{*}$, average energy $\langle E/E_{\rm max} \rangle_{\rm halo}$, and average circularity $\langle j_{z}/j_{\rm circ} \rangle_{\rm halo}$.
/Snapshot_N/UnboundMass {N_gal} Mass fraction of the excluded particles $M_{\rm unbound}/M_{*}$. Particles are excluded if $E>=0$, $|j_z/j_{\rm circ}|>=1.5$, and$|j_p/j_{\rm circ}|>=1.5$.
/Snapshot_N/Barred {N_gal} Flag to state if a galaxy is barred (according to Zana+22): $A_{2, \rm max}(R)>=0.1$, $R_{\Phi}>=2.8h$, $k_{\rm rot}>0.4$, $\sigma_z / \sigma_R<1$, $M_{b1}/M_{b2}<1.3$, and $M_{b1}/M_{b2}>1/1.3$.
/Snapshot_N/BarSize {2, N_gal} Two different estimates for the the bar extent: $R_{\Phi}$, $R_{\rm peak}$. Units are physical $[{\rm kpc}]$.
/Snapshot_N/BarStrength {2, N_gal} Two different estimates for the bar strength: $A_{2, \rm max}(R)$ and $A_{2, \rm max}(< R)$.
/Snapshot_N/QualityFlags {3, N_gal} Additional parameters to asses the presence of a bar: $k_{\rm rot}$, $\sigma_z / \sigma_R$, and $M_{b1}/M_{b2}$.
/Snapshot_N/StellarMass {N_gal} Total stellar mass of the subhalo. Units are $[\rm{M}_\odot]$.

Note: for TNG50-1, the available snapshot numbers N range from 6 to 99.

Note: if no bar structure is found, the related entries are set equal to -1.

### (u) LEGA-C/VIMOS Mock Optical Spectra

This catalog contains mock (i.e. synthetic) optical spectra of galaxies at intermediate redshift, designed to match the instrumental properties and setup of the LEGA-C Survey. This spectroscopic survey obtained deep, high-resolution spectra of thousands of galaxies with $M_\star > 10^{10} \rm{M}_\odot$ from $z=0.6$ to $z=1$, using the VLT/VIMOS multi-object slit spectograph.

These synthetic spectra have been designed to cover TNG galaxies over the same redshift and mass ranges, such that LEGA-C matched samples can be constructed. The spectra have been created to exactly mimic the instrumental and survey characteristics, such as spectral resolution, noise, seeing, and so on. Each extends over a rest-frame wavelength range of $\sim 3700$ Angstrom to $\sim 5200$ Angstrom. For every TNG galaxy, 10 realizations are provided, by matching to 10 different random LEGA-C galaxies of similar mass. In addition, the original 'idealized' spectra are also included, one per TNG galaxy.

Complete details on the methodology are presented in Wu+ (2021), where they were first analyzed. Citation to that paper, as well as to Nelson+ (2018) where the mock spectra construction was developed, is requested if you use this data catalog.

Simulation and snapshot coverage:

• Available for TNG100-1 (five snapshots, z=0.6, 0.7, 0.8, 0.9, and 1.0).
• Restricted to subhalos with $10^{10.3} < M_{\star} / \rm{M}_\odot < 10^{11.5}$ (stellar masses measured within 30 pkpc).

This catalogue is one single file, containing five groups named Snapshot_N, one per snapshot. The following datasets are included in each snapshot group:

Group Name Shape Units Description
/Snapshot_N/subhaloIDs {N_gal} - The Subfind IDs these values correspond to at this snapshot.
/Snapshot_N/ideal_spec {N_gal, N_wave} $10^{-19} \rm{ergs/s/cm^2/A}$ Fully idealized spectra, one per TNG galaxy. In general, should not be used, in favor of the realistic mock spectra.
/Snapshot_N/ideal_wave {N_wave} Angstrom Rest-frame wavelength grid for the idealized spectra above.
/Snapshot_N/mock_spec {N_gal, 10, N_wave} $10^{-19} \rm{ergs/s/cm^2/A}$ Realistic mock spectra, ten for each TNG galaxy.
/Snapshot_N/mock_wave {N_gal, 10, N_wave} Angstrom Rest-frame wavelength grid. Differs for each of the ten realized mock spectra, because the observed-frame wavelength depends on the position of galaxies on the masks, while the redshift also makes the rest-frame wavelengths different.
/Snapshot_N/mock_err {N_gal, 10, N_wave} $10^{-19} \rm{ergs/s/cm^2/A}$ Error (uncertainty) spectra.
/Snapshot_N/mock_flag {N_gal, 10, N_wave} - Quality mask (boolean). Spectra data points with a value of False should not be used in analysis.
/Snapshot_N/mock_legac_id {N_gal, 10} - The LEGA-C object ID number for each matched realization, integer.
/Snapshot_N/mock_legac_mask {N_gal, 10} - The LEGA-C slit mask number for each matched realization, integer.
/Snapshot_N/D4000_N {N_gal, 10} - The $D_{\rm n}4000$ spectral indices, measured directly from the realistic mock spectra.
/Snapshot_N/D4000_N_ERR {N_gal, 10} - Uncertainty on the $D_{\rm n}4000$ spectral indices, measured directly from the realistic mock spectra.
/Snapshot_N/LICK_HD_A {N_gal, 10} - The Lick $H\delta$ spectral indices, measured directly from the realistic mock spectra.
/Snapshot_N/LICK_HD_A_ERR {N_gal, 10} Angstrom Uncertainty on the Lick $H\delta$ spectral indices, measured directly from the realistic mock spectra.

Note: for TNG100-1, the available snapshot numbers N are 50, 53, 56, 59, and 63. The corresponding values of {N_gal} are 3058, 3223, 3371, 3503, and 3624.

Note: the dimension of size 10 in the above datasets corresponds to 10 realizations of mock spectra for each TNG galaxy (see paper for details).

Note: For all spectra, {N_wave} is a constant 6166 wavelength points.

### (v) JWST-CEERS Mock Galaxy Imaging

This catalog contains synthetic images for JWST-like NIRCam and MIRI observations of high-redshift galaxies. The full description of the synthetic images and measurements can be found in Costantin+ (2022), to which citation is requested if you use this data. For full details, please see the paper.

Simulation and snapshot coverage:

• Available for: TNG50-1.
• Redshifts: z=3, z=4, z=5, and z=6.
• Restricted to subhalos with stellar mass $M_\star / \rm{M}_\odot > 10^{9.0}$ as well as total half-mass radius $R_{\rm half} \gtrsim 1\, \rm{arcsec}$.
• For each galaxy, there are 20 view configurations (5 inclinations: i=[0, 45, 90, 135, 180], and 4 azimuths: a=[0, 90, 180, 270]).

Each dataset (for one instrument configuration and redshift) can be downloaded as a single tar.gz file (below).

The synthetic images are available as datacubes in FITS format. Each dataset contains the same 4 redshift bins (galaxies from four simulation snapshots). The ‘EXTn’ keyword in the main header can be used to identify the different filters available (n=1-12 for NIRCam SW, n=1-15 for NIRCam LW, n=1-9 for MIRI, and n=1-36 for the resolved TNG50 version). Catalogs containing the main properties of each synthetic image are also available.

### (w) Multi-band (UV to submm) Photometry and SEDs

This catalog contains mock (i.e. synthetic) multi-wavelength photometry and spectral energy distributions (SEDs), across a broad wavelength range, from the UV to the submillimeter. These are highly realistic values, obtained with the SKIRT dust radiative transfer code, and with a calibration against DustPedia data. These band magnitudes/fluxes and SEDs are available for TNG50 galaxies at low redshift: $z=0$ and $z=0.1$ in particular.

Complete details on the methodology are presented in Trčka+ (2022), where they were created and first analyzed. Citation to that paper is requested if you use this data catalog.

Simulation and snapshot coverage:

• Available for TNG50-1 and TNG50-2 (in both cases, for two snapshots, z=0.0 and z=0.1).
• Restricted to subhalos with $M_{\star} > 10^{8} \rm{M}_\odot$, stellar masses measured within twice the stellar half mass radius.
• This corresponds to 7375 (5669) galaxies at $z=0$ and 7302 (5665) galaxies at $z=0.1$ for TNG50-1 (TNG50-2).

This catalogue is one single file per simulation, containing groups named Snapshot_N, one per snapshot. The following datasets are included for each snapshot:

Group Name Shape Units Description
/Snapshot_N/SubhaloID {N_gal} - The Subfind IDs these values correspond to at this snapshot.
/Snapshot_N/Mags {N_gal, N_bands, N_apertures, N_orientations} $\rm{mag}$ Absolute, rest-frame magnitudes for this galaxy in each band, for a given aperture and orientation.
/Snapshot_N/Fluxes {N_gal, N_bands, N_apertures, N_orientations} $\rm{Jy}$ Total observed flux, in Jansky, for this galaxy in each band, for a given aperture and orientation.
/Snapshot_N/SEDs {N_gal, N_wave, N_apertures, N_orientations} $\rm{Jy}$ The total observed flux for this galaxy, in Jansky, at each wavelength, for a given aperture and orientation.
/Snapshot_N/SEDs_wave {N_wave} $\mu\rm{m}$ Observed-frame wavelength grid, in microns, for which the total fluxes have been stored above.

Note: {N_apertures} is always 4, and these correspond to (in order): 10 kpc, 30 kpc, twice the stellar half mass radius, and five times the stellar half mass radius. (Also listed in the HDF5 attributes).

Note: {N_orientations} is always 3, and these correspond to (in order): edge-on, face-on, and random. (Also listed in the HDF5 attributes).

Note: {N_bands} is always 53, and these correspond to (in order): GALEX_FUV, GALEX_NUV, SDSS_u, SDSS_g, SDSS_r, SDSS_i, SDSS_z, TwoMASS_J, TwoMASS_H, TwoMASS_Ks, UKIDSS_Z, UKIDSS_Y, UKIDSS_J, UKIDSS_H, UKIDSS_K, Johnson_U, Johnson_B, Johnson_V, Johnson_R, Johnson_I, Johnson_J, Johnson_M, WISE_W1, WISE_W2, WISE_W3, WISE_W4, IRAS_12, IRAS_25, IRAS_60, IRAS_100, IRAC_I1, IRAC_I2, IRAC_I3, IRAC_I4, MIPS_24, MIPS_70, MIPS_160, PACS_70, PACS_100, PACS_160, SPIRE_250, SPIRE_350, SPIRE_500, SCUBA2_450, SCUBA2_850, ALMA_10, ALMA_9, ALMA_8, ALMA_7, ALMA_6, PLANCK_857, PLANCK_545, PLANCK_353. (Also listed in the HDF5 attributes). For the values at redshift zero, all instruments were placed at a distance of 20 Mpc.

Note: {N_wave} is always 387, and the values are given by the SEDs_wave dataset.

Finally, we provide a supplementary .zip file for download. This contains: (i) a Jupyter notebook which shows examples of loading and exploring the data, and (ii) the SKIRT .ski configuration file used to perform the radiative transfer runs.

### (x) Globular Clusters

This catalog contains a dataset of globular clusters for high-mass halos. The existence, and properties, of globular clusters (GCs) has been inferred in post-processing with a 'tagging' technique. At the time when a galaxy infalls (i.e. accretes) into a more massive host, its GC population is created. Each GC is attached to (i.e. represented by) a single dark matter particle, which sets its subsequent gravitational dynamics and location.

Complete details on the methodology and physical modeling assumptions are presented in Doppel+ (2020), where this GC catalog was created and first analyzed. Citation to that paper is requested if you use this data. Additional details are available in Ramos+ (2015), Ramos-Almendares+ (2018), and Ramos-Almendares+ (2020), which describe previous versions and the evolution of the GC tagging model.

This catalog specifically contains the "realistic GCs" from Doppel+ (2020), which is one realization of the GC population, subsampled from a larger ensemble of candidate GC populations. It has been designed to roughly reproduce realistic GC properties at redshift zero. Additional realizations, as well as the entire set of GC candidates, can be made available upon request.

Simulation and snapshot coverage:

• Available for TNG50-1, redshift zero (snapshot 99).
• Restricted to halos with $M_{200c} > 5 \times 10^{12} \rm{M}_\odot$. More specifically, GCs are present within subhalos with stellar masses $M_{\star} \geq 10^{6} \rm{M}_\odot$ at $z=0$ which have additionally reached a maximum stellar mass of at least $5 \times 10^{6} \rm{M}_\odot$ in their lifetime, and had at least 100 dark matter particles and non-zero stellar mass at infall.
• This corresponds to the subhalos of 39 massive host halos at $z=0$, and a total of 196,606 GCs.

This catalogue is one file, which includes the following datasets:

Group Name Shape Units Description
/GCColor N - The 'color' of the GC. 0 = red (representative of red, metal rich GCs), and 1 = blue (representative of blue, metal poor GCs).
/GCHostGroup N - The Halo ID that the GC belongs to. GCs exist for groups 0-35, 40, 42, and 45.
/GCHostSubfindID N - The Subfind ID that the GC belongs to, at z=0. A value of -1 indicates that the GC belongs to the set of Intracluster GCs (ICGCs) for a particular group. These objects are not bound to any surviving subhalo at z=0 and are accreted, i.e. they were not originally tagged to the group's central.
/GCMass N $\rm{M}_\odot$ The mass of the GC. Masses range from a minimum of ~7000 solar masses to ~5e6 solar masses.
/GCPartID N - The particle ID of the dark matter particle to which this GC has been 'tagged'. Particle IDs are unique when the GC population is split by color, but there can be overlap (i.e. sharing) of particle IDs between the red and blue GCs.
/GCPos N,3 $\rm{ckpc/h}$ Spatial position of the GC (original box coordinates).
/GCProgenitorSnapshot N - The snapshot number, at which the GC was tagged (i.e. created and attached to a DM particle).
/GCProgenitorSubfindID N - The Subfind ID of the progenitor galaxy (i.e. subhalo) to which the GC was tagged at its infall snapshot.
/GCVel N,3 $\rm{km/s}$ Velocity of the GC (original units, and in the frame of reference of the box).

### (y) Merger History

Catalogs containing information and statistics about the merging history of all subhalos (i.e. galaxies), across all time. Here mergers are split into three categories: major (stellar mass ratio > 1/4), minor (stellar mass ratio between 1/10 and 1/4), and all (any stellar mass ratio) mergers. The mass ratio is always based on the stellar masses of the two merging galaxies at the time when the secondary reached its maximum stellar mass.

To avoid spurious flyby and re-merger events, mergers are only included when both galaxies can be tracked back to a time when each of them belonged to a different FoF group. Furthermore, to clean the mergers from events released to non-cosmological subhalos (i.e. "clumps"), a cleaning procedure has been applied as follows. First, all subhalos with SubhaloFlag == False are ignored. Second, the secondary is ignored if it did not exist for more than 2 snapshots.

For complete definitions on the calculation of each value, see the following table, Rodriguez-Gomez (2017), and Eisert et al. (2022). Citation to these two papers is requested if you use these data catalogs.

Simulation and snapshot coverage:

Major mergers (stellar mass ratio > 1/4), minor mergers (1/10 < stellar mass ratio < 1/4), and all mergers (any stellar mass ratio):

Dataset Name Units Description
SnapNumLastMajorMerger - The snapshot number in which the galaxy had its last major merger.
SnapNumNextMajorMerger - The snapshot number in which the galaxy will have its next major merger; -1 if it will never have another major merger. Note that this includes situations in which the galaxy merges onto a more massive object than itself. In these cases, it is up to the user to determine if the galaxy of interest is the main progenitor of the merger remnant, if any (this can be achieved by comparing the MainLeafProgenitorID of the original galaxy and of the descendant).
NumMajorMergers{time} - The number of major mergers during the last {time} period (see below).
NumMajorMergersTotal - The total number of major mergers throughout the galaxy's history.
SnapNumLastMinorMerger - The snapshot number in which the galaxy had its last minor merger.
SnapNumNextMinorMerger - The snapshot number in which the galaxy will have its next minor merger; -1 if it will never have another major merger. (see above)
NumMinorMergers{time} - The number of minor mergers during the last {time} period (see below).
NumMinorMergersTotal - The total number of minor mergers throughout the galaxy's history.
SnapNumLastMerger - The snapshot number in which the galaxy had its last merger, of any mass ratio.
SnapNumNextMerger - The snapshot number in which the galaxy will have its next merger, of any mass ratio; -1 if it will never have another major merger. (see above)
NumMergers{time} - The number of mergers, of any mass ratio, during the last {time} period (see below).
NumMergersTotal - The total number of mergers, of any mass ratio, throughout the galaxy's history.

Note: in all cases above, {time} can be any of six options: "Last250Myr", "Last500Myr", "LastGyr", "SinceRedshiftOne", and "SinceRedshiftTwo".

Note: if a snapshot number is undefined, i.e. there is no major merger for SnapNumLastMajorMerger, the value is set to -1.

There are also additional merger statistics that attempt to quantify the cumulative effects of all the mergers that a galaxy has ever had. These are plausibly more meaningful quantities than the "standard" merger statistics described above (e.g. the time since the last major merger, etc.). As usual, the properties of the secondary progenitor (as well as the merger mass ratio) are measured at the time when it reached its maximum stellar mass, while the time of the merger corresponds to the snapshot in which the two merger tree branches join. As shown in Rodriguez-Gomez et al. (2017), these quantities are strongly correlated with the fraction of accreted stars in a galaxy. Available quantities are:

Dataset Name Units Description
MeanGasFraction - The mean "cold" (i.e. star-forming) gas fraction of all the objects that have merged with the galaxy in question, weighted by their maximum stellar masses.
MeanLookbackTime $\rm{Gyr}$ The mean lookback time of all the mergers that a galaxy has undergone, weighted by the maximum stellar mass of the secondary progenitors.
MeanMassRatio - The mean stellar mass ratio of all the mergers that a galaxy has undergone, weighted by the maximum stellar mass of the secondary progenitors.
MeanRedshift - The mean redshift of all the mergers that a galaxy has undergone, weighted by the maximum stellar mass of the secondary progenitors.

Finally, there are additional merger statistics, with analog meanings as above, unless otherwise stated:

Dataset Name Units Description
AccretedStellarMass{time} $10^{10} \rm{M}_\odot / h$ The total accreted (i.e. "ex-situ") stellar mass, in the last {time} period (see below).
MeanRedshiftAtPeakMass{time} - Average redshift at which the secondaries reached their maximum stellar mass (weighted by stellar mass, and considering only mergers that happened in the last {time} period). This differs from the "MeanLookbackTime", which refers to the actual time when the mergers took place.
MeanStellarMass{time} $10^{10} \rm{M}_\odot / h$ The mean stellar mass of all the mergers that a galaxy has undergone, weighted by the maximum stellar mass of the secondary progenitors.
MeanStellarMassRatio{time} - The mean stellar mass ratio of all the mergers that a galaxy has undergone, weighted by the maximum stellar mass of the secondary progenitors. Equivalent to MeanMassRatio above.
NumMajorMergers{time} - The number of major mergers during the last {time} period (see below).
NumMinorMergers{time} - The number of minor mergers during the last {time} period (see below).
NumMergers{time} - The number of mergers, of any mass ratio, during the last {time} period (see below).

Note: in all cases above, {time} can be any of four options: "Last2Gyr", "Last5Gyr", "Last8Gyr", and "SinceRedshift5".

Finally, in the case of TNG50-1 catalogs (only), each file contains an additional group named "WithConstraint". In this group, a second version of all the above datasets can be found, where an additional constraint has been applied to secondaries. Specifically, secondaries are ignored if there were not more than 50 stellar particles in at least one snapshot in its lifetime. These merger statistics exclude very small galaxies, and may be useful. They reproduce the published results of Eisert+ (2022) and Sotillo-Ramos+ (2022).