Skip to content
LiranSc edited this page May 4, 2026 · 29 revisions

🌌 Welcome to the GRANITE Wiki

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.

Warning

Documentation synchronization notice — v0.6.7.x: GRANITE-NR recently underwent a repository restructuring and documentation refresh. The Wiki is currently being synchronized with the latest README.md, docs/, CLI workflows, and benchmark parameter schema. During this transition, some links, examples, or parameter names may temporarily lag behind the current codebase. For runnable commands, prefer the root README.md, docs/getting_started/Installation.md, and the YAML files under benchmarks/. I am actively reviewing and correcting the inconsistencies as part of the current stabilization pass.

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.7.2
  • Test suite: 107 C++ tests across 20 suites, 100% pass rate (GoogleTest) + 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

  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 --release

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

# Pre-flight check
python3 scripts/health_check.py

# Run all tests (C++ + Python)
python3 scripts/run_granite.py build --tests
python3 -m pytest tests/python -v

# 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.7.2 — MAY 4, 2026 — LiranOG

Clone this wiki locally