Skip to content
LiranOG edited this page May 19, 2026 · 29 revisions

🌌 Welcome to the GRANITE Wiki

⏸️ Note: GRANITE is on a development hiatus from May to August 2026. The Wiki content remains accurate for v0.6.8 (the stable hiatus checkpoint). See the main repository README for full details.

GRANITE (General‑Relativistic Adaptive N‑body Integrated Tool for Extreme Astrophysics) is a high‑performance, open‑source numerical relativity engine designed to simulate the most violent events in the universe: the simultaneous inspiral, tidal disruption, and merger of multiple supermassive black holes in the presence of massive stars, magnetic fields, radiation, and neutrino microphysics.

What makes GRANITE different?

Unlike traditional numerical relativity codes that focus on binary black hole or binary neutron star mergers, GRANITE is built from the ground up for N‑body supermassive black hole coalescence (N ≥ 3) with full physics:

  • CCZ4 spacetime evolution – 22 evolved variables, 4th‑order finite differences, moving‑puncture gauge, Kreiss–Oliger dissipation.
  • GRMHD with advanced Riemann solvers – HLLE and HLLD (Miyoshi & Kusano 2005), MP5/PPM/PLM reconstruction, constrained transport (∇·B = 0).
  • Multi‑physics matter – tabulated nuclear EOS, M1 grey radiation transport, hybrid neutrino leakage + moments.
  • Block‑structured AMR – Berger–Oliger subcycling, gradient‑based tagging, tracking spheres for moving horizons (full multi‑level AMR is under active development).
  • Post‑processing suite – Ψ₄ gravitational‑wave extraction, spin‑weighted spherical harmonics, recoil velocity, Blandford–Znajek jet power, and EM light curves.
  • HPC ready – MPI + OpenMP + HDF5 parallel I/O. GPU backends (CUDA/HIP) are on the roadmap.

Current status (Latest Stable Release)

  • Release: v0.6.8
  • Test suite: 107 C++ tests across 20 suites (105 passed, 2 skipped) via GoogleTest v1.14 + Python pytest suite
  • Validated benchmarks: single_puncture (Schwarzschild stability), B2_eq (equal‑mass binary black hole merger), gauge_wave (CCZ4 code validation)
  • Production‑grade components: CCZ4 core, GRMHD Valencia formulation, HLLD+CT, tabulated EOS, horizon finder, granite_analysis CLI package.

📚 Quick links


📖 Documentation — Start Here

If you want to... Go to
Install GRANITE Installation Guide
Understand the engine architecture Architecture Overview
Configure a simulation Parameter Reference
Debug a failing simulation Simulation Health & Debugging
Understand the physics equations Physics Formulations
See benchmark results Benchmarks & Validation
Deploy on HPC HPC Deployment
Contribute code Developer Guide
See what bugs have been fixed Known Fixed Bugs
Understand initial data options Initial Data
Learn about AMR design AMR Design
Understand GW extraction GW Extraction
See what's coming next Roadmap
Get answers to common questions FAQ
See the scientific context Scientific Context
Navigate all documents Documentation Index
Version history CHANGELOG Summary
Explore the interactive WebGL N-body simulator VORTEX Engine
Learn about the Architecture History of GRANITE & VORTEX Theoretical & Architectural Overview

Getting started

Tip

Recommended stable baseline: If you are not experienced with resolving WSL, Python, CMake, or CLI integration errors, do not start from the active main branch. Use the v0.6.5 tag instead. It is the stable baseline release intended for clean benchmark runs with the legacy sim_tracker.py telemetry workflow. Download the v0.6.5 ZIP from the repository Tags page, extract it under WSL/Linux, and run the commands documented inside that version.

  1. Follow the Installation Guide (Linux / WSL2 only).
  2. Install the Python analysis package: pip install -e .[dev]
  3. Run the health check: python3 scripts/health_check.py
  4. Launch the single‑puncture benchmark: python3 scripts/run_granite.py run --benchmark single_puncture
  5. Explore the live dashboard: python3 scripts/run_granite.py dev — integrated build → run → granite_analysis telemetry pipeline.

🚀 Quick Start

git clone https://github.com/LiranOG/Granite-NR.git && cd Granite-NR

# Install dependencies (Ubuntu/WSL2)
sudo apt update && sudo apt install -y build-essential cmake libhdf5-dev libopenmpi-dev libyaml-cpp-dev

# Build
python3 scripts/run_granite.py build --build-type Release

# Install Python analysis package
pip install -e .[dev]

# Pre-flight check
python3 scripts/health_check.py

# Run all tests (C++ + Python)
PYTHONPATH=python pytest -q tests/python

# Run single-puncture benchmark
python3 scripts/run_granite.py run --benchmark single_puncture

# Live telemetry pipe
./build/bin/granite_main benchmarks/B2_eq/params.yaml 2>&1 | python3 -m granite_analysis.cli.sim_tracker

🤝 Contributing & Partnership

GRANITE welcomes contributions from the scientific and open-source communities. See Developer Guide and .github/CONTRIBUTING.md.

For institutional partnership, HPC allocations, or academic collaboration: open a GitHub Issue tagged [partnership].


"Simulate the unimaginable."
GRANITE v0.6.8 — MAY 19, 2026 — LiranOG

Clone this wiki locally