Skip to content

nhouba/tdi-infinity-patchpack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TDI-∞ Patch Pack for LISA L01 Software Suite

This repository provides drop-in modules and example notebooks for running all-in-one TDI-infinity (TDI-∞) with the ESA/DDPC LISA L01 software suite. TDI-∞ is a constellation-level calibration scheme that suppresses dominant instrumental noise sources in LISA data, enabling gravitational wave detection.

Reference: Houba et al. 2025, Class. Quantum Grav. 42 145003

Overview

The TDI-∞ method constructs a design matrix M from known light travel times to express discrete measurements y as combinations of time-delayed noise samples:

$$\mathbf{y} = M \mathbf{p}$$

It then solves for the null space T of M† to build TDI-∞ observables:

$$\mathbf{o} = T \mathbf{y}$$

This projects out instrumental noise while preserving gravitational wave signals.

Repository Structure

tdi-infinity-patchpack/
├── README.md                    # This file
├── constellation/
│   └── tdiinf.py               # Core TDI-∞ implementation
├── notebooks/
│   ├── simulation.ipynb        # Generate simulation data (orbits + telemetry)
│   └── pipeline_jax.ipynb      # Run TDI-∞ + MCMC parameter estimation
└── examples/
    ├── instru.h5               # Example instrument telemetry data
    ├── orbits.h5               # Example orbit ephemeris
    └── data.pkl                # Example simulation parameters

Installation

Prerequisites

This code requires the ESA/DDPC LISA L01 software suite. Additionally, install the following packages:

pip install numpy scipy matplotlib h5py dill
pip install lisaorbits lisainstrument lisaconstants pytdi
pip install ldc  # LISA Data Challenges tools

For the JAX-accelerated pipeline (optional):

pip install jax jaxlib emcee corner

Setup

Important: The files in this repository must be copied into specific locations within your local ESA/DDPC LISA L01 clone. The file names must remain unchanged.

Copy files to your lolipops installation:

# Copy the TDI-∞ module
cp constellation/tdiinf.py /path/to/lolipops/lolipops/constellation/

# Copy notebooks to your working directory or lolipops notebooks folder
cp notebooks/*.ipynb /path/to/your/working/directory/

Usage

1. Generate Simulation Data

Run notebooks/simulation.ipynb to create:

  • orbits.h5: LISA orbit ephemeris using Keplerian orbits
  • instru.h5: Simulated telemetry with configurable noise sources
  • data.pkl: Pickled simulation parameters

Configure noise sources by setting the flags at the top of the notebook:

LASER_NOISE = True   # Laser frequency noise
OB_NOISE = True      # Optical bench jitter
CLOCK_NOISE = True   # Ultra-stable oscillator noise
MOD_NOISE = True     # Sideband modulation noise
OMS_NOISE = True     # Optical metrology system noise
TM_NOISE = True      # Test mass acceleration noise
GAPS = False         # Introduce data gaps (NaNs)

2. Run TDI-∞ Pipeline

Run notebooks/pipeline_jax.ipynb to:

  1. Load simulation data and construct the TDI-∞ model
  2. Build noise covariance matrices
  3. Inject a test gravitational wave signal
  4. Perform MCMC parameter estimation using JAX acceleration
  5. Visualize posterior distributions

Models

AllInOneTDIModel

The full constellation-level model accounting for:

  • 6 laser frequency noises (one per optical bench)
  • 6 optical bench jitter noises
  • 3 ultra-stable oscillator (clock) errors
  • 3 sideband modulation noises

Uses measurements from:

  • 6 SCI (science interferometers)
  • 6 TMI (test-mass interferometers)
  • 3 REF (reference interferometers)
  • 6 ISB (SCI sidebands)
  • 3 RSB (REF sidebands)

EtaTDIModel

A simplified model operating on pre-computed eta (η) variables for laser-noise-only calibration. Useful for validation and benchmarking.

Key Parameters

Parameter Description Typical Value
chunking Samples per chunk in block matrix construction 150
overlap Row overlap fraction between chunks 0.1
n Lagrange interpolation order 31
verify Disable normalization for Mp-y residual checks False

Citation

If you use this code, please cite:

@article{Houba_2025,
    author = {Houba, N and others},
    title = {Time-delay interferometry infinity},
    journal = {Classical and Quantum Gravity},
    volume = {42},
    number = {14},
    pages = {145003},
    year = {2025},
    doi = {10.1088/1361-6382/adeb3c}
}

License

See the LICENSE file for details.

Contributing

Contributions are welcome. Please open an issue or submit a pull request.

About

Drop-in modules and example notebooks implementing all-in-one time-delay interferometry (TDI-∞) for suppressing instrumental noise in LISA data, with support for simulation, calibration, and JAX-accelerated inference.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors