Skip to content

hugohertault/DG-S8H0-simulations

Repository files navigation

DG-S8H0-simulations

Dark Geometry — C Boltzmann code implementation resolving the σ₈ and H₀ tensions

σ₈ = 0.766 and H₀ = 72.7 km/s/Mpc from d = 3. Zero free parameters.

License: MIT Language: C/Python/Fortran Dark Geometry


What is this?

This repository contains the Boltzmann code implementation of Dark Geometry (DG) modifications to CLASS/CAMB, resolving both major cosmological tensions simultaneously from first principles.

The two tensions:

Tension Before DG After DG Observable
σ₈ 3.6σ 0.0σ KiDS-1000: 0.766 ± 0.020
H₀ 4.8σ 0.3σ SH0ES: 73.04 ± 1.04 km/s/Mpc

Zero free parameters. Every constant is derived from d = 3.


The Physics in One Equation

Dark Geometry rests on the Hertault Axiom:

e^{4σ(x)} = 𝓘(x) ≡ S_ent(x) / S_Bek(x)

where σ is the conformal mode of the metric and 𝓘 is the informational saturation ratio. From this single axiom and d = 3, the entire dark sector follows — no new particles, no free parameters, no fine-tuning.


Fundamental Parameters (all derived from d=3)

// From dark_geometry.h — these are THEOREMS, not choices

alpha_star = sqrt(2) / (6*pi)          // = 0.075026  [Book III, χ=d=3 network]
beta       = (d-1)/d = 2/3             // = 0.666667  [Book I, area law]
xi         = beta / (4*(1+beta))       // = 0.1000    [Book II, 3 independent proofs]
Delta_n    = 2 * beta * alpha_star^2   // = 7.505e-3  [key identity: s(s-1)=β]
S_max      = exp(-2 * N * Delta_n)     // = 0.885     [derived, NOT hard-coded]

The key identity linking particle physics to cosmology:

s(s-1) = β    where s = (1 + √(1+4β))/2

Proof (2 lines):
  4s² - 4s = (1+√(1+4β))² - 2(1+√(1+4β)) = 4β  □

This bridges the Rosen–Morse spectral structure (particle masses, Koide formula, neutrinos) to the cosmological growth suppression rate. σ₈ is a consequence of particle physics.


Two Mechanisms, One Field

σ₈ Resolution — Tachyonic Jeans Mechanism

The Dark Boson has a density-dependent mass (Book II, Theorem 15.1):

m²(ρ) = (α* M_Pl)² × [1 - (ρ/ρ_c)^(2/3)]
Regime Condition Role
Cosmic voids ρ ≪ ρ_c > 0 (stable) Dark energy
Transition ρ = ρ_c = 0 (massless) Phase transition
Galaxy halos ρ ≫ ρ_c < 0 (tachyonic) Dark matter clustering

The tachyonic instability creates scale-dependent gravity:

G_eff(k,a)/G = 1 + 2α*² / (1 + (k/k_J)²)

Over N = 8.13 e-folds of matter domination → differential growth → power spectrum suppression:

Δn    = 2β·α*²        = 7.505×10⁻³
S_max = exp(-2N·Δn)   = 0.885
σ₈^DG = 0.811 × √S(k_eff) = 0.766    ← 0.0σ vs KiDS-1000

H₀ Resolution — Three-Level Structure (Book I)

Level 1 — Ab initio geometric value:

H₀ = √(π/N) / t_Pl = 70.3 km/s/Mpc
where N = (3/2) × 3^256   [horizon entropy from d=3]

Level 2 — Sound horizon shift from ξ·R·φ²:

ξ = β/[4(1+β)] = 1/10   (derived 3 independent ways)
r_s^DG ≈ 0.953 × r_s^ΛCDM   (-4.7%)
H₀^early ≈ 67.3 × (1+ξ)^(1/2) ≈ 70.6 km/s/Mpc

Level 3 — Dynamical dark energy w(z) ≠ -1:

ΔH₀^late ≈ +2.1 km/s/Mpc
H₀^DG = 72.7 km/s/Mpc    ← 0.3σ vs SH0ES

Holographic Running Φ(𝓘) — Book II, Chapter 17

The coupling α* runs with scale via the Christoffel symbol of the Fisher–Rao fibre:

dα_i/d ln(μ) = -Φ(𝓘) × b_i × α_i² / (2π)

Φ(𝓘) = (1 - 2𝓘) / (1 - 𝓘)          ← reduced Christoffel function

𝓘(μ) = 0.5 / (1 + b₀·α_s(M_Z)/(2π) × ln(μ/M_Z))

Validated fixed points:

Scale 𝓘(μ) Φ(𝓘) Meaning
M_Z = 91 GeV 0.5000 0.000 Z pole = geometric fixed point ✓
Beam-splitter 2/3 -1.000 Confinement resonance ✓
Photon point 1/3 +0.500 𝓘 = 1/d ✓
M_Pl 0.084 ≈ +1 UV: standard running recovered ✓

Repository Structure

DG-S8H0-simulations/
│
├── README.md                     ← This file
├── LICENSE                       ← MIT
│
├── src/                          ← C library (CLASS/CAMB plugin)
│   ├── dark_geometry.h           ← All parameters, declarations, macros
│   ├── dark_geometry.c           ← Full implementation (running Φ(𝓘) included)
│   └── fourier_patch.c           ← Patch for CLASS fourier.c
│
├── python/                       ← Standalone validation (no CLASS needed)
│   └── run_dg_simulation.py      ← Full simulation + 6-panel figure
│
├── fortran/                      ← N-body code patch
│   └── ecosmog_dg_patch.f90      ← ECOSMOG/RAMSES Fortran patch
│
├── configs/                      ← Ready-to-use configuration files
│   ├── class_dg.ini              ← CLASS config with DG parameters
│   └── planck_bestfit.yaml       ← Planck 2018 + DG predictions
│
├── docs/                         ← Technical documentation
│   ├── PHYSICS.md                ← Complete derivation chains
│   ├── CODE_GUIDE.md             ← CLASS/CAMB integration guide
│   └── CORRECTIONS_v2.md        ← 4 bug fixes from original code
│
├── paper/                        ← Reference paper
│   ├── dg_tensions.tex           ← Full LaTeX source (14 pages)
│   └── dg_tensions.pdf           ← Compiled PDF
│
└── notebooks/
    └── DG_predictions.ipynb      ← Interactive Jupyter notebook

Quick Start

Option 1: Python standalone (2 minutes)

git clone https://github.com/hugohertault/DG-S8H0-simulations
cd DG-S8H0-simulations
pip install numpy matplotlib scipy
python python/run_dg_simulation.py

Expected output:

σ₈^DG = 0.766   [3.6σ → 0.3σ vs DES Y3]
H₀^DG = 72.7 km/s/Mpc   [4.8σ → 0.3σ vs SH0ES]

Figures saved to figures/DG_full_simulation.png.

Option 2: CLASS integration (C)

# 1. Copy DG files to CLASS
cp src/dark_geometry.{h,c} /path/to/class/source/

# 2. Add to Makefile
echo "OFILES += dark_geometry.o" >> /path/to/class/Makefile

# 3. Patch fourier.c (see docs/CODE_GUIDE.md for exact location)
# Apply suppression S(k) ONCE after P(k) is computed

# 4. Compile and run
cd /path/to/class && make && ./class configs/class_dg.ini

See docs/CODE_GUIDE.md for complete integration instructions.


Core C Functions Reference

Function Returns Description
dark_geometry_init(&pdg) _SUCCESS_ Initialize all parameters
dg_Phi(I) double Reduced Christoffel Φ(𝓘)
dg_I_of_mu(mu_GeV, &pdg) double 𝓘(μ) from holographic running
dg_alpha_star_running(k, &pdg) double α*(k) via Φ(𝓘(μ(k)))
dg_k_Jeans(a, &pdg) double k_J(a) [h/Mpc]
dg_G_eff_ratio(k, a, &pdg) double G_eff(k,a)/G
dg_suppression_factor(k, a, &pdg) double S(k) — apply in fourier.c
dg_sigma8_suppression(&pdg) double Full σ₈ prediction + printout
dg_H_modification(z, &pdg) double H(z) boost from DG-E
dg_H0_prediction(&pdg) double H₀ prediction + printout

Important: dg_mu() returns 1.0 by design. Apply S(k) only via dg_suppression_factor() in fourier.c. Never in perturbations.c as well.


Bug Fixes from Original Code

# Bug Original Fixed
1 S_max hard-coded 0.882 (constant) exp(-2Nβα*²) = 0.885 (derived)
2 Running formula α*(k) = 0.075(1 + 0.01 ln(k_UV/k)) Φ(𝓘(μ(k))) — Book II Ch.17
3 k_J epoch a=1 today → k_J=100 h/Mpc (wrong) Time-averaged over matter era → 0.049 h/Mpc
4 Double-counting Risk in perturbations+fourier dg_mu()=1.0 confirmed, single path

Testable Predictions

Beyond σ₈ and H₀, this code implements predictions that can falsify Dark Geometry:

  1. Scale-dependent P(k) — Euclid, Rubin/LSST: 11.5% suppression at k > 0.05 h/Mpc
  2. w(z) ≠ -1 — DESI, Euclid: w₀ ≈ -0.9, w_a ≈ 0.10
  3. No gravitational slip — η = Ψ/Φ = 1 (unlike most modified gravity theories)
  4. Running plateau near M_Z — |Φ| < 0.1 for μ ∈ [63, 139] GeV → testable at FCC-ee
  5. No dark matter particles — consistent with null results at LZ, XENONnT

References

This repository: H. Hertault, Resolving the σ₈ and H₀ Tensions from First Principles in Dark Geometry, preprint March 2026 → paper/dg_tensions.pdf

The trilogy:

Observational data: Planck 2018 (A&A 641, A6) · DES Y3 (PRD 105, 023520) · KiDS-1000 (A&A 645, A104) · SH0ES (ApJL 934, L7) · DESI 2024 (arXiv:2404.03002)


Citation

@software{hertault2026dgs8h0,
  author = {Hertault, Hugo},
  title  = {DG-S8H0-simulations: Dark Geometry C implementation
            resolving the σ₈ and H₀ tensions},
  year   = {2026},
  url    = {https://github.com/hugohertault/DG-S8H0-simulations}
}

License

MIT — see LICENSE

Author: Hugo Hertault — Surgeon & Independent Theoretical Physicist, Tahiti, French Polynesia


"The universe has σ₈ = 0.766 and H₀ = 72.7 km/s/Mpc because it has d = 3 spatial dimensions."

Releases

No releases published

Packages

 
 
 

Contributors