sim-highlinev0.24.0 · doi
2,041 records22 simulations117 observational and empirical sources44 relationsz 0–17released 2026-10-18

Study · Definitions

How much of the disagreement between simulations is just definitions?

In plain words

Only 4% of 2,567 pairs of curves from different simulations measure the same thing in the same way.

Many differences between simulated curves are not physics. The papers measured slightly different things: another mass aperture, another way of counting stars, another galaxy selection. Going only by what each source documents, 4% of the 2,567 pairs of curves are measured alike. 13% cannot be judged, because a source does not say what it measured. So a gap you see between two curves may not be physics.

Abstract

Two simulations that plot the same relation often measure different things: a 30 or a 50 kpc stellar mass, a Salpeter or a Chabrier IMF, a 10 or a 100 Myr star formation rate. Without correcting any curve, 2,567 cross-simulation curve pairs are classified by what their documented definitions allow, and the shift caused by one definition is measured inside single runs. 4% of pairs have every needed definition documented and equal; 13% cannot be classified because a source does not say what it measured. What can be compared cleanly is limited by what the sources document. Whether definitions explain the disagreement, the data neither show nor rule out (no epoch test survives correction for multiple tests).

Status
Result · descriptive, no protocol
Script
scripts/analyze_definition_budget.py
Dataset
v0.24.0

Limits in brief. This is a description, not a test: there is no protocol and the curves are reused in many pairs. 55% of the simulation curves were read from figures and no outside expert has checked them. A definition we could not find is not an absence of an effect. Details in §4.

Question

How much of the disagreement between simulations at fixed stellar mass (or halo mass) can be attributed to differences in documented definitions, as opposed to physics or numerics? No curve is corrected: pairs of records from different simulations are classified from their documented definitions alone, and their offsets are compared.

The cleanest measurement of a definition is inside a single run that is published under two of them. Nothing else differs there, so the offset is purely definitional.

Data

Every pair of curves from different simulations, for seven relations at five epochs, is classified from the documented definitions alone:

matched
every needed key is stated and equal
differing
a stated difference, for example 30 versus 50 kpc
unknown
a definition is missing in one of the two records
not comparable
a defining quantity differs, for example two different size definitions

468 of 1636 simulation records had definitions recovered from the source papers, each with section, quote and the checksum of the archive read (evidence ledger). Inside single runs, 78 pairs form 30 groups; population splits (active versus passive) and model variations are excluded.

Result

Cross-simulation record pairs by what the documented definitions allowmatched4% · 90differing23% · 589unknown13% · 341not comparable60% · 1547
Fig. 1Cross-simulation record pairs by what the documented definitions allow, 2,567 usable pairs. Filling undocumented values from the papers moved 23% of pairs from “unknown” to “differing”; the share that is fully matched barely moves because simulations rarely use the same aperture.
Measured shift in the relation when only one definition changes inside a single simulation runDot: median over epochs; bar: range of the per-epoch medians. Zero means the definition does not matter.-0.75-0.50-0.250.000.25BlueTides · UV luminosity functiondust attenuated → none+0.01COLIBRE · stellar mass function100 pkpc → 30 pkpc0.00COLIBRE · stellar mass function100 pkpc → 50 pkpc0.00COLIBRE · stellar mass function100 pkpc → total bound subhalo0.00COLIBRE · stellar mass function30 pkpc → 50 pkpc0.00COLIBRE · stellar mass function30 pkpc → total bound subhalo0.00COLIBRE · stellar mass function50 pkpc → total bound subhalo0.00EAGLE · stellar mass function100 pkpc → 10 pkpc−0.02EAGLE · stellar mass function100 pkpc → 30 pkpc0.00EAGLE · stellar mass function100 pkpc → petrosian 2D−0.01EAGLE · stellar mass function100 pkpc → total bound subhalo0.00EAGLE · stellar mass function10 pkpc → 30 pkpc+0.02EAGLE · stellar mass function10 pkpc → petrosian 2D+0.01EAGLE · stellar mass function10 pkpc → total bound subhalo+0.02EAGLE · stellar mass function30 pkpc → petrosian 2D−0.01EAGLE · stellar mass function30 pkpc → total bound subhalo0.00EAGLE · stellar mass functionpetrosian 2D → total bound subhalo+0.01EAGLE · stellar-to-halo massBN98 → M200crit+0.04FIREbox · smdstars in all ident… → stars in galaxies …−0.22FLARES · UV luminosity functiondust attenuated → none+0.03Illustris · stellar mass function2R_half stars → 30 pkpc+0.05Illustris · stellar mass function2R_half stars → total subhalo+0.06Illustris · stellar mass function30 pkpc → total subhalo−0.01Illustris · stellar-to-halo mass2R_half stars → stars within R200c…+0.13IllustrisTNG · size3D radius enclosin… → face on circulariz…−0.03NIHAO zoom suite · baryonic Tully-Fisherall baryons within… → stars plus neutral…−0.35NewHorizon · cold gas fractioncold gas n > 0.1 c… → cold gas n > 10 cm…−0.44SPHINX20 · main sequence10 → 100−0.16THESAN-1 · UV luminosity functiondust attenuated → dust attenuated0.00THESAN-zoom · UV luminosity functionBouwens+16 empiric… → fiducial THESAN ZO…0.00
Fig. 2Shift of the relation when only one definition changes inside a single run. Dot: median over the shared x range and epochs, in the relation’s y units (dex for logarithmic quantities). Bar: range of the per-epoch medians. Zero means the definition does not matter. Largest local offsets are far bigger than the medians, mostly at the bright or massive end: see Table 1.
Table 1 · Definition changes inside single runs (30 groups)
SimulationRelationDefinitionFrom → tozMedianEpoch mediansMax |Δ|
BlueTidesuvlfdust treatmentdust attenuated → none8–13+0.006−0.002 to +0.0881.76
COLIBREgsmfstellar mass100 pkpc → 30 pkpc0−0.004–0.52
COLIBREgsmfstellar mass100 pkpc → 50 pkpc0−0.001−0.001 to −0.0010.42
COLIBREgsmfstellar mass100 pkpc → total bound subhalo0+0.000–0.26
COLIBREgsmfstellar mass30 pkpc → 50 pkpc0+0.002+0.002 to +0.0030.32
COLIBREgsmfstellar mass30 pkpc → total bound subhalo0+0.004–0.65
COLIBREgsmfstellar mass50 pkpc → total bound subhalo0+0.001+0.001 to +0.0011.30
EAGLEgsmfstellar mass100 pkpc → 10 pkpc0.1−0.018–0.64
EAGLEgsmfstellar mass100 pkpc → 30 pkpc0.1−0.002−0.002 to −0.0010.18
EAGLEgsmfstellar mass100 pkpc → petrosian 2D0.1−0.014–0.22
EAGLEgsmfstellar mass100 pkpc → total bound subhalo0.1+0.000–0.15
EAGLEgsmfstellar mass10 pkpc → 30 pkpc0.1+0.017+0.017 to +0.0170.47
EAGLEgsmfstellar mass10 pkpc → petrosian 2D0.1+0.006–0.49
EAGLEgsmfstellar mass10 pkpc → total bound subhalo0.1+0.017–0.69
EAGLEgsmfstellar mass30 pkpc → petrosian 2D0.1−0.009−0.010 to −0.0090.09
EAGLEgsmfstellar mass30 pkpc → total bound subhalo0.1+0.001+0.000 to +0.0020.29
EAGLEgsmfstellar masspetrosian 2D → total bound subhalo0.1+0.013–0.37
EAGLEshmrhalo massBN98 → M200crit0–5+0.043+0.021 to +0.1000.45
FIREboxsmdstellar massstars in all identified galaxies → stars in galaxies with M*>10^9.3 Msun2−0.218–0.65
FLARESuvlfdust treatmentdust attenuated → none10–15+0.032−0.070 to +0.0501.77
Illustrisgsmfstellar mass2R_half stars → 30 pkpc0+0.050–0.35
Illustrisgsmfstellar mass2R_half stars → total subhalo0–7+0.065−0.012 to +0.1200.44
Illustrisgsmfstellar mass30 pkpc → total subhalo0−0.013–0.75
Illustrisshmrstellar mass2R_half stars → stars within R200c excluding satellites0–4+0.130+0.117 to +0.1380.25
IllustrisTNGsizesize3D radius enclosing half of the stellar m… → face on circularized 2D radius enclosing …0.5–4−0.030−0.109 to +0.0610.23
NIHAO zoom suitebtfrstellar massall baryons within virial radius → stars plus neutral gas0−0.350–1.62
NewHorizongasgascold gas n > 0.1 cm^ 3 and T < 2e4 K with… → cold gas n > 10 cm^ 3 and T < 2e4 K withi…0.25–2−0.440−0.593 to −0.3311.06
SPHINX20sfmsSFR timescale (Myr)10 → 1004.64–8−0.165−0.362 to −0.1030.91
THESAN-1uvlfdust treatmentdust attenuated → dust attenuated6+0.001–0.98
THESAN-zoomuvlfdust treatmentBouwens+16 empirical attenuation relation… → fiducial THESAN ZOOM dust model12–14−0.000−0.006 to +0.0050.20

Largest median shift: −0.44 dex (NewHorizon, cold gas fraction, gas). Largest local offset: 1.77 dex (FLARES, UV luminosity function, dust treatment). Median and range are in the relation’s y units (dex for logarithmic quantities), over the shared x range and the epochs listed; Max |Δ| is the largest offset at any single x. None of these is a physics difference.

Documentation of the definitions each comparison needs, by simulationStacked bars: stated in the original table or figure, recovered from the source paper, still undocumented.BlueTides37% openHorizon-AGN18% openCoDa II17% openFLARES13% openASTRID13% openSIMBA11% openFIREbox11% openNewHorizon10% openMagneticum Pathfinder8% openIllustrisTNG8% openIllustris7% openNIHAO zoom suite7% openTHESAN-16% openEAGLE3% openDARWIN3% openCOLIBRE0% openTHESAN-zoom0% openFIRE-20% openSPHINX200% openFLAMINGO0% openRomulus250% openThe Three Hundred0% open
Fig. 3For each simulation, the share of definition values the comparison rules need that were stated in the original table or figure (dark), recovered from the source paper (vermilion), or are still open (hatched). 432 values remain open: 343 where the paper was read and does not state it, 80 where it has not yet been read for that key, and 9 where the source is a data release without a paper.

A result that went away

Before the definitions were completed from the papers, one stellar-mass-function epoch (z about 6) looked significantly better matched for definition-matched pairs (p = 0.004, recorded in the changelog for 0.17.0). After 468 records were completed it did not (p = 0.13): the apparent detection was produced by undocumented fields. Of 18 epoch tests, 1 fell below p = 0.05, where 0.9 would be expected by chance, and 0 survived Bonferroni correction. The data neither show nor exclude a definitional contribution.

Limits

  • Digitized records are included. 55% of the simulation curves are digitized from figures and are never rankable; the rankable-only run in the data is the robustness check and is much smaller.
  • Definition labels are coarse. “Unspecified” hides everything, and two labels that read alike may differ in detail.
  • Within-run pairs are few. The sensitivity catalogue covers 30 groups; absence of a measurement is not absence of an effect.
  • Descriptive. There is no protocol; each curve is reused in many pairs, so the tests are not independent. The mass-function study asks a narrower question with a single pre-specified statistic.
  • Not independently verified. No expert has checked these records yet; a single author confirming a simulation’s definitions would change the status of its curves.

Reproduce

node scripts/annotate-definitions.mjs          # apply recovered definitions (data/definition-fills.json)
python3 scripts/analyze_definition_budget.py   # writes the analysis document and data/analysis/definition-budget.json
node scripts/build-site.mjs                    # regenerates this page from the JSON

Method, parameters, the per-epoch table and every sensitivity pair: ANALYSIS-definition-budget.md.