util_RIFT_pseudo_pipe.py

Overview

util_RIFT_pseudo_pipe.py is the primary user-facing interface for RIFT analyses. It provides a command-line interface similar to lalinference_pipe for running parameter estimation on gravitational wave events.

This executable sets up RIFT analyses, manages prior configurations, handles GraceDB event retrieval, and coordinates the overall analysis workflow.

Location

MonteCarloMarginalizeCode/Code/bin/util_RIFT_pseudo_pipe.py

Usage

Run on a GraceDB event:

python util_RIFT_pseudo_pipe.py --gracedb-id G329483 --approx NRHybSur3dq8 --l-max 4

Reproduce a previously run analysis using an INI file:

python util_RIFT_pseudo_pipe.py --use-ini test.ini --use-coinc coinc.xml --use-rundir test --use-online-psd-file psd.xml.gz

With online PSD file:

python util_RIFT_pseudo_pipe.py --gracedb-id G123456 --approx IMRPhenomXHM --use-online-psd-file psd.xml.gz

Command-Line Arguments

Event Selection

--gracedb-id <id>

GraceDB event ID to analyze. This is the primary way to specify an event.

--event-time <time>

Event time (GPS). Must be used with --manual-initial-grid.

--use-ini <file>

INI file for parsing. Intended to reproduce lalinference_pipe functionality. Full path recommended.

--use-rundir <path>

Working directory. Must be an absolute path.

--use-coinc <file>

Coincidence XML file.

Waveform Configuration

--approx <name>

Waveform approximant (REQUIRED). Examples: NRHybSur3dq8, IMRPhenomXHM.

--l-max <int>

Maximum l for spherical harmonics (default: 2).

--use-gwsurrogate

Use gwsurrogate instead of lalsuite.

--use-gwsignal

Use gwsignal interface.

Spin Configuration

--assume-nospin

Force analysis with zero spin.

--assume-precessing

Force analysis with transverse spins.

--assume-nonprecessing

Force analysis without transverse spins.

--assume-matter

Force analysis with matter effects (BNS).

--assume-matter-eos <eos>

Force analysis with matter and specify EOS.

--assume-highq

Force high-q strategy, neglecting spin2.

Distance and Marginalization

--internal-marginalize-distance

Marginalize over distance variable.

--internal-marginalize-distance-file <file>

Filename for marginalization file.

--internal-distance-max <value>

Upper limit on distance (required for marginalization).

--distance-reweighting

Reweight posterior samples due to different distance prior (LVK production prior).

Calibration

--calibration-reweighting

Add job to DAG to reweight posterior samples due to calibration uncertainty.

--calibration-reweighting-count <int>

Number of calibration curves to request when marginalizing (default: 100).

--bilby-ini-file <file>

Pass INI file for calibration reweighting.

--bilby-pickle-file <file>

Bilby pickle file with event settings.

Advanced Options

--add-extrinsic

Add extrinsic parameters to analysis.

--add-extrinsic-time-resampling

Add time resampling option (for vectorized calculations).

--internal-use-amr

Use adaptive mesh refinement strategy.

--internal-force-iterations <n>

Override internal guidance on number of iterations.

--internal-test-convergence-threshold <value>

Convergence test threshold (default: 0.02).

Examples

Basic BNS Analysis

Run a basic BNS analysis on a GraceDB event:

python util_RIFT_pseudo_pipe.py --gracedb-id G329483 --approx NRHybSur3dq8 --l-max 4

Analysis with Calibration Reweighting

Run with calibration uncertainty marginalization:

python util_RIFT_pseudo_pipe.py --gracedb-id G329483 --approx NRHybSur3dq8 --calibration-reweighting --calibration-reweighting-count 200

Precessing Binary Analysis

Run with precessing spins:

python util_RIFT_pseudo_pipe.py --gracedb-id G329483 --approx IMRPhenomXHM --assume-precessing

Distance Marginalization

Run with distance marginalization:

python util_RIFT_pseudo_pipe.py --gracedb-id G329483 --approx NRHybSur3dq8 --internal-marginalize-distance --internal-distance-max 200

See Also