◀ Back

Snapshots

Snapshots contain the most complete description of the simulation available. They contain a large number of properties for each resolution element of the simulation. Each snapshot provides a "picture" of the simulation at a given cosmic time. THESAN provides 80 of such snapshots. The scale factor and redshift at which they are produced are listed under Snapshot times below (click to open).
Note: THESAN includes two DM-only runs that were run to z=0. For these, at \( z<5.5 \) we provide snapshots every \( \Delta z = 0.25 \). The simulations actually include significantly more snapshots, but they are not provided for storage reason, but are available upon request. We do, however, provide all group catalogs available and the merger trees are constructed at the highest time resolution possible.

Snapshot times ▾
Snapshot
scale factor
redshift
0 0.0476 20.00
1 0.0495 19.20
2 0.0514 18.47
3 0.0532 17.81
4 0.0550 17.19
5 0.0567 16.63
6 0.0585 16.11
7 0.0602 15.62
8 0.0618 15.17
9 0.0635 14.75
10 0.0651 14.35
11 0.0668 13.98
12 0.0684 13.63
13 0.0699 13.30
14 0.0715 12.98
15 0.0731 12.69
16 0.0746 12.41
17 0.0761 12.14
18 0.0776 11.89
19 0.0791 11.64
20 0.0806 11.41
21 0.0820 11.19
22 0.0835 10.98
23 0.0849 10.78
24 0.0863 10.59
25 0.0877 10.40
26 0.0891 10.22
Snapshot
scale factor
redshift
27 0.0905 10.05
28 0.0919 9.88
29 0.0933 9.72
30 0.0946 9.57
31 0.0960 9.42
32 0.0973 9.28
33 0.0986 9.14
34 0.0999 9.01
35 0.1013 8.88
36 0.1026 8.75
37 0.1039 8.63
38 0.1051 8.51
39 0.1064 8.40
40 0.1077 8.29
41 0.1090 8.18
42 0.1102 8.07
43 0.1115 7.97
44 0.1127 7.87
45 0.1139 7.78
46 0.1152 7.68
47 0.1164 7.59
48 0.1176 7.50
49 0.1188 7.42
50 0.1200 7.33
51 0.1212 7.25
52 0.1224 7.17
53 0.1236 7.09
Snapshot
scale factor
redshift
54 0.1248 7.01
55 0.1260 6.94
56 0.1271 6.87
57 0.1283 6.79
58 0.1295 6.72
59 0.1306 6.66
60 0.1318 6.59
61 0.1329 6.52
62 0.1341 6.46
63 0.1352 6.40
64 0.1363 6.34
65 0.1375 6.28
66 0.1386 6.22
67 0.1397 6.16
68 0.1408 6.10
69 0.1419 6.05
70 0.1430 5.99
71 0.1441 5.94
72 0.1452 5.89
73 0.1463 5.83
74 0.1474 5.78
75 0.1485 5.73
76 0.1496 5.69
77 0.1506 5.64
78 0.1517 5.59
79 0.1528 5.55
80 0.1538 5.50
Snapshots are stored using the HDF5 data format. Each snapshot contains an header group, whose attributes contain general information about the simulation setup and the current snapshot. The available attributes are listed here (click to open).
Header attributes ▾
Attribute Dimensions Units Description
BoxSize 1 \( ckpc / h \) Spatial extent of the periodic box (in comoving units).
HubbleParam 1 - Little \( h \), defined as \( h = H_0 / (100 km/s/Mpc) \)
MassTable 6 \( 10^{10} M_\odot / h \) Masses of particle types which have a constant mass (only DM).
NumFilesPerSnapshot 1 - Number of file chunks per snapshot.
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}\)
Omega0 1 - The cosmological density parameter for matter.
OmegaBaryon 1 - The cosmological density parameter for baryons.
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.
UnitLength_in_cm 1 - Length unit used in the simulation, expressed in comoving cm.
UnitLength_in_g 1 - Mass unit used in the simulation, expressed in g.
UnitLength_in_cm_per_s 1 - Velocity unit used in the simulation, expressed in comoving cm / s.
Within each snapshot file, resolution elements are divided by type. For each type, there is a corresponding group PartTypeN (where N is the type number). Inside each one of these groups, each simulated property is saved in a separate dataset. For example, the positions of all dark matter (PartType2) particles in a single file are saved in the dataset PartType2/Positions. The list of available datasets for each particle type is shown in the tables below (click to open).
NOTE: Most fields have identical meaning to those in the IllustrisTNG outputs. Those that differ have the tag (modified), while the new ones show the tag (new).
Part Type 0 (gas) ▾
Dataset Dim. 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 coordinates.
Coordinates (N,3) \( ckpc / h \) Spatial position within the periodic simulation domain of BoxSize. Comoving coordinate.
Density N \( 10^{10} M_\odot h^2 / ckpc^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 = \) ElectronAbundance \( \times n_H \), where \(n_H = X_H \) \( \rho / m_p \). Use with caution for star-forming gas (see comment below for NeutralHydrogenAbundance).
GFM_DustMetallicity (new) N - Dust-to-gas ratio of the cell. The dust mass contained in the cell is therefore \( M_d = M_{gas} \times \) GFM_DustMetallicity.
GFM_Metallicity (modified) N - The ratio \( M_Z / M_{total} \) where \( M_Z \) is the total mass all metal elements (above He). It is not in solar units. To convert to solar metallicity, divide by 0.0127 (the primordial solar metallicity). Note: \( M_Z \) includes (metals locked in) dust.
GFM_Metals (modified) (N,9) - 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. Unlike IllustrisTNG, the untracked metals are not stored separately. Their mass can be inferred from the total metal mass (computed from the gas metallicity). Note: Abundances include the metals locked in dust.
HI_Fraction (new) N - HI fraction of the cells, as tracked by the non-equilibrium thermochemistry module coupled to the radiation transport solver.
HeI_Fraction (new) N - HeI fraction of the cells, as tracked by the non-equilibrium thermochemistry module coupled to the radiation transport solver.
HeII_Fraction (new) N - HeII fraction of the cells, as tracked by the non-equilibrium thermochemistry module coupled to the radiation transport solver.
InternalEnergy N \( (km/s)^2 \) Internal (thermal) energy per unit mass for this gas cell. This field holds the corrected values, and is generally recommended for all uses.
MagneticField (N,3) \( (h/a^2) \sqrt{}\)UnitPressure 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 UnitPressure\( ^{1/2} = ( \)UnitMass/UnitLength\( )^{1/2} \)/UnitTime \(= (10^{10} M_\odot / ckpc)^{1/2} \times (km/s) / ckpc = 2.60 \times 10^{-6} \) to obtain CGS units (Gauss).
MagneticFieldDivergence N \( (h^3/a^2) \) \( (10^{10} M_\odot)^{1/2} \) \( (km/s) \)\( (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.
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.
PhotonDensity (new) (N,3) # \( / (ckpc / h)^3 / 10^{63} \) Density of photons in the cells in the three spectral bands tracked.
Potential N \( (km/s) / a \) Gravitational potential energy.
StarFormationRate N \( M_\odot / yr \) Instantaneous star formation rate of the gas cells.
SubfindHsml N \( ckpc / h \) The comoving radius of the sphere centered on this cell enclosing the \(64 \pm 1\) nearest dark matter particles.
Velocities (N,3) \( km \sqrt{a} / s \) Spatial velocity. Multiply this value by \(\sqrt{a}\) to obtain peculiar velocity.
Part Type 1 (dark matter) ▾
Dataset Dim. 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 star particle. Constant for the duration of the simulation.
Potential N \( (km/s) / a \) Gravitational potential energy.
SubfindHsml N \( ckpc / h \) The comoving radius of the sphere centered on this cell enclosing the \(64 \pm 1\) nearest dark matter particles.
Velocities (N,3) \( km \sqrt{a} / s \) Spatial velocity. Multiply this value by \(\sqrt{a}\) to obtain peculiar velocity.
Part Type 4 (stars) ▾
Dataset Dim. Units Description
BirthDensity (new) N \( 10^{10} M_\odot h^2 / ckpc^3 \) Comoving mass density where this star particle initially formed.
BirthPos (N,3) \( ckpc / h \) Spatial position within the periodic box where this star particle initially formed. Comoving coordinate.
(N,3) \( (km/s) / a \) Spatial velocity of the parent star-forming gas cell at the time of formation. The peculiar velocity is obtained by multiplying this value by \(\sqrt{a}\).
Coordinates (N,3) \( ckpc / h \) Spatial position within the periodic simulation domain of BoxSize. Comoving coordinate.
GFM_DustMetallicity (new) N - Dust-to-gas ratio of the stellar particle. This value is inherited directly from the parent gas cell and never changed.
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 (modified) N - See entry under PartType0. Inherited from the gas cell spawning/converted into this star, at the time of birth.
GFM_Metals (modified) (N,9) - See entry under PartType0. Inherited from the gas cell spawning/converted into this star, at the time of birth.
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 \( ( \leq 0 ) \) is the sign of this quantity.
GFM_StellarPhotometrics (N,8) 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 particle or wind phase cell. Constant for the duration of the simulation.
Potential N \( (km/s) / a \) Gravitational potential energy.
SubfindHsml N \( ckpc / h \) The comoving radius of the sphere centered on this cell enclosing the \(64 \pm 1\) nearest dark matter particles.
Velocities (N,3) \( km \sqrt{a} / s \) Spatial velocity. Multiply this value by \(\sqrt{a}\) to obtain peculiar velocity.
Part Type 5 (black holes) ▾
Dataset Dim. Units Description
BH_CumEgyInjection_QM N \( 10^{10} M_\odot / h \)\( (ckpc/h)^2 \)\( /(0.978 Gyr/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.978 Gyr/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 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_RM 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_Density N \( 10^{10} M_\odot h^2 / ckpc^3 \) Local comoving gas density averaged over the nearest neighbors of the BH.
BH_Hsml N \( ckpc/h \) The comoving radius of the sphere enclosing the 128, 256 (for the THESAN-2 and THESAN-1 series, respectively) \(\pm 4\) nearest-neighbor gas cells around the BH. Used for the BH feedback (excluding radiation).
BH_MPB_CumEgyHigh (new) N \( 10^{10} M_\odot / h \)\( (ckpc/h)^2 \)\( /(0.978 Gyr/h)^2 \) Identical to BH_CumEgyInjection_QM but only computed along the main progenitor branch, defined as the branch containing the most massive progenitor of each BH merger.
BH_MPB_CumEgyLow (new) N \( 10^{10} M_\odot / h \)\( (ckpc/h)^2 \)\( /(0.978 Gyr/h)^2 \) Identical to BH_CumEgyInjection_RM but only computed along the main progenitor branch, defined as the branch containing the most massive progenitor of each BH merger.
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.978 Gyr/h) \) The mass accretion rate onto the black hole, instantaneous.
BH_MdotBondi N \( 10^{10} M_\odot / h \)\( /(0.978 Gyr/h) \) Current estimate of the Bondi accretion rate for this BH. Calculated as \( \dot{M}_{Bondi} = ( \alpha 4 \pi G^2 M^2_{BH} \rho ) / (c^2_s + v^2_{BH})^{3/2} \) with \( \alpha=1 \) and \( v_{BH}=0 \) for THESAN.
BH_MdotEddington N \( 10^{10} M_\odot / h \)\( /(0.978 Gyr/h) \) Current estimate of the Eddington accretion rate for this BH. Calculated as \( \dot{M}_{edd} = ( 4\pi G M_{BH} m_p)/(\epsilon_r \sigma_T c) \) where \(\epsilon_r=0.2\) is the radiative efficieny parameter.
BH_PhotonHsml (new) N \( ckpc/h \) The comoving radius of the sphere enclosing the \( 64 \pm 4 \) nearest-neighbor gas cells around the BH. Used for the injection of photons from the BH.
BH_Pressure N \( 10^{10} M_\odot / h \)\( (ckpc/h)^2 \)\( /(0.978 Gyr/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.
SubfindHsml N \( ckpc/h \) The comoving radius of the sphere centered on this blackhole particle enclosing the \(64 \pm 1 \) nearest dark matter particles.
Velocities (N,3) \( km \sqrt{a} /s \) Spatial velocity. Multiply this value by \(\sqrt{a}\) to obtain peculiar velocity.

Dataset attributes

Each dataset has the following scalar attributes defined.
Attribute Description
a_scaling Scaling of the dataset with expansion factor \( a \).
h_scaling Scaling of the dataset with little h \( (h = H_0 / 100 km/s/Mpc ) \).
length_scaling Scaling of the dataset with the unit length of the simulations (available in the snapshot header as UnitLength_in_cm).
mass_scaling Scaling of the dataset with the unit mass of the simulations (available in the snapshot header as UnitMass_in_g).
to_cgs Conversion factor from internal units to cgs units (Note that this does not convert from comoving to physical units!).
velocity_scaling Scaling of the dataset with the unit velocity of the simulations (available in the snapshot header as UnitVelocity_in_cm_per_s).

Particle order

Within the snapshots, resolution elements of each type separately are sorted according to the FoF group (see groups) they belong to. This means that all the particles belonging to the FoF group 0 are first, followed by those part of the FoF group 1, and so on. Particles not belonging to any FoF group are last. Within each FoF group, particles are sorted according to their subhalo (as identified by SUBFIND, see groups). Particles not associated to any subhalo are last (within the group). Finally, within each subhalo particles are sorted according to their binding energy. Once sorted, particles of each type are split in approximately-equal chunks. Each chunk is stored in a different chunk file. The truncation is performed independently for each particle type. On the right, there is a schematic view of the arrangement of resolution elements of an individual PartType.

Note: There is no guarantee that particles belonging to the same halo are stored in the same file. There is also no gurantee that particles of different types belonging to the same FoF group are stored in the same chunk file.