Cosmic-web data: reproduce and validate
The website reads the checked-in data/cosmic-web.json manifest and the
1,179,648-byte data/cosmic-web.bin payload (about 1.2 MB). The separate
data/cosmic-web-method.json exposes parameters, limitations and sources.
Python and scientific packages are needed only to regenerate or validate these
assets, not to build the website or render it in a browser.
From the repository root, use the existing scientific environment:
/opt/anaconda3/envs/macss/bin/python scripts/generate-cosmic-web.py --check
/opt/anaconda3/envs/macss/bin/python scripts/generate-cosmic-web.py --reproduce
/opt/anaconda3/envs/macss/bin/python scripts/generate-cosmic-web.py
--check validates the existing binary layout, hash, finite values,
cosmology bookkeeping and curve consistency. --reproduce recalculates the
fields and requires byte-for-byte agreement with all three checked-in assets.
The command without a flag regenerates the assets. After regeneration, rebuild the matching static poster with node scripts/render-cosmic-fallback.cjs. Reproduction was verified
with Pythonās installed NumPy 2.3.3, SciPy 1.16.2 and CAMB 1.6.4; software
versions are also recorded in the manifest. The generator defaults to one
OpenMP/BLAS thread. Use the same environment for exact reproduction; changing
versions or numerical settings can change the realizationās encoded bytes.
Physical model and units
- Periodic comoving box: 200 hā»Ā¹ Mpc; Fourier/displacement mesh: 96³.
- 24,576 common scrambled Sobol Lagrangian tracer positions; fixed random seed.
- Stored redshifts: 4, 1 and 0. All coordinates and displacements in the binary
decode to a box with side length 2. Multiply them by 100 to obtain hā»Ā¹ Mpc.
Render
q + displacement, wrapping every coordinate into[-1, 1). - First-order Lagrangian map:
x(q,z) = q + ĪØ(q,z), withĪØ(k,z) = i k Ī“_cb(k,z) / k². Each epoch uses its own CAMB linear CDM+baryon spectrum, preserving scale-dependent linear growth with neutrinos. - Paired models: Ī£mν = 0 and 0.15 eV. They share the same Gaussian Fourier amplitudes/phases, total Ī©m, h, As, ns, Ī©b, Neff and flat Ī geometry. CAMBās massive-neutrino density replaces CDM to hold total Ī©m fixed. The massive model uses three degenerate species; Ļ8 is not renormalized between models.
- The displacement source has Gaussian smoothing Ļ = 1.2 hā»Ā¹ Mpc and a spherical Fourier cutoff at 0.8 times the grid Nyquist frequency. The displayed density comes from CIC deposition of all 96³ displaced equal-mass elements, followed by Gaussian smoothing Ļ = 0.65 grid cells.
- Brightness uses the same transfer for every epoch and model:
clip(log1p(Ļ_cb/mean_Ļ_cb) / log(9), 0, 1). Values are quantized to uint8; density ratios ā„8 saturate. Brightness is neither luminosity nor a per-epoch percentile. Points of interest are separated extrema of this approximate smoothed density, not observed objects or a halo catalogue. - Theory-curve units: k in h Mpcā»Ā¹, P in (hā»Ā¹ Mpc)³.
ratioTotalis CAMBās linear total-matter P for 0.15 eV divided by its 0 eV reference at the same stored redshift. Its k samples run from 0.005 to 0.6 h Mpcā»Ā¹. These curves are unsmoothed theory outputs, not spectra measured from the rendered sample.
Interpretation limits
This is a scientifically motivated illustration, not an N-body or 2LPT simulation and not FOLPS output. Zelādovich evolution does not model virialization or accurately predict bound halos and small-scale densities after shell crossing. The massive-neutrino treatment is linear and scale dependent; it is not a nonlinear multifluid evolution. Rendered tracers are not individual galaxies or neutrinos. Intermediate browser frames interpolate stored displacements and brightness; they are not additional evaluated CAMB epochs.
Finite volume, source smoothing, mesh resolution, deposition and tracer subsampling limit the image. Σmν = 0.15 eV is an illustrative parameter choice, not an inferred measurement; the 0 eV case is a massless-neutrino comparison, not a universe without neutrinos. No special BAO shell or filament graph is inserted, and this box is not used to measure a BAO scale.
Primary references and API definitions: CAMB transfer variables, CAMB spectra and units, Whiteās Zelādovich treatment. The connection to HernĆ”nās research is documented in the FOLPSν paper; that paper is research context, not the numerical source of this visualization.