Back to home
Internal Announcement · AEI

Introducing Celephais

Spectral XCTS initial data for precessing compact binaries — on a laptop.

Celephais is a numerical-relativity initial-data code built on the Kadath spectral library — a sibling of FUKa, not a branch or fork of it. It solves the XCTS system for binary neutron stars and black-hole–neutron-star systems without imposing equatorial symmetry, so spins may take arbitrary orientations. The globally coupled multi-domain Jacobian is assembled in sparse form, factored with MUMPS, and reused as a refreshed right preconditioner inside a Jacobian-free Newton–Krylov iteration; dense storage never appears. A converged precessing-BNS solve on a survey grid completes in ≈26 s on four cores — about 140 solutions per hour from one laptop, with no cluster allocation.
26 s
Converged precessing-BNS solve, 4 MPI ranks, survey grid N = 7
< 17 GB
Complete production-resolution job — fits in laptop memory
Fewer unknowns for the same constraint accuracy with hp-AMR (q = 20)
Absolute cost — strong scaling

Sparse-Jacobian construction plus MUMPS analysis and factorisation for an equal-mass 1.35 + 1.35 M precessing BNS (DD2 EOS, coordinate separation 35 M, one star at χ = 0.3 tilted 81° to the orbital angular momentum), at resolution N = 9. All timings are on a single MacBook Pro with an Apple M4 Max processor.

0 10 20 30 seconds 29.90 35.26 16.04 21.47 9.10 14.47 6.16 12.04 1 rank 2 4 8 1.00× 1.86× 3.29× 4.85× Jacobian assembly assembly + factorisation (wall)
Assembly speedup reaches 4.85× on eight ranks (60.7% parallel efficiency). Extra ranks accelerate assembly but not the sparse factorisation, so the wall time flattens first — adding ranks past this knee buys little.
Why adaptive refinement

Uniform spectral order is the expensive way to buy accuracy: stored nonzeros and factorisation cost grow much faster than the unknown count. The same precessing BNS on two ranks, swept in resolution:

0 100 200 300 seconds 20.1 70.1 214.3 312.9 + N = 9 N = 11 N = 13 N = 15 41.6k dof 81.0k 120.2k 191.2k 2.8 GB 7.4 GB 13.9 GB out of memory Jacobian assembly MUMPS analysis + factorisation
A 4.6× increase in unknowns costs 19.5× in assembly alone and exhausts laptop memory at N = 15, where the factorisation did not complete. Anisotropic hp-refinement answers this: domain-local spectral tails decide where order is added, so resolution is not spent on directions that are already resolved.

For a mass-ratio-20 BHNS, one h move reduces the Hamiltonian-constraint norm by about a factor of 8 — roughly 2.4× better than the equal-cost p move — and subsequent p moves match the finest uniform-grid accuracy with about three times fewer unknowns. At mass ratio 10 the saving is 1.6×.

Solver coverage
Isolated black hole — BH (3D), BH2d
Isolated neutron star — NS, NS_nosym, NS2d, NS2d_xcts
Binary neutron star — BNS, BNS_nosym
Black hole – neutron star — BHNS, BHNS_nosym
Scalar–tensor (DEF) — NS_def, BNS_def
Scalar–Gauss–Bonnet — NS_sGB, BNS_sGB

_nosym variants drop orbital-plane symmetry for spinning and tilted configurations; binary black holes are built on the BH formalism. MUMPS 5.9.0 and METIS 5.1.0 are vendored and built automatically — no separate installation.

Validation

Generated BNS initial data has been evolved with the SACRA code — many thanks to Yong and Mingzhe for their support in validating the codebase.

The accompanying code paper adds binding-energy comparisons against post-Newtonian sequences, a precessing-BNS eccentricity-reduction test, and a full evolution whose waveform-reconstructed precession axis follows a post-Newtonian simple-precession model. Celephais is ready for production initial-data runs.

Access & Setup

The code is available from github.com/Hao-Jui/Celephais. A typical checkout is named Celephais.

Tailored build and launcher scripts are included:

1
From the top-level folder, run ./compile.sh.
2
Navigate to a solver output directory, e.g. Celephais/apps/BNS/sbatch_outputs.
3
Launch locally or submit through sub_Celephais.sh — the same script runs under mpirun or sbatch.
Benchmark provenance: all figures are medians of three runs on one MacBook Pro with an Apple M4 Max processor. Scaling and resolution data are from Table I of the Celephais code paper (in preparation); the 26 s figure is an end-to-end converged solve of the canonical BNS_nosym configuration at N = 7 on four MPI ranks, measured 4 August 2026, and covers boost and binary stages to a final Newton error of 3 × 10−9. Throughput is that solve run back to back on the same four ranks. At N = 15 the factorisation did not complete within available memory.
Follow development and releases in the public Celephais GitHub repository.