Skip to content

cosmo-nerd/prompt-grb-analysis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 

Repository files navigation

prompt-grb-analysis

Bangs, Blips and Background: Decoding GRB Signals

This project implements a pipeline to detect and classify Gamma-Ray Bursts (GRBs) from AstroSat-CZTI data using statistical methods and signal processing techniques. It distinguishes astrophysical transients from background noise and charged particle hits, establishing a framework for reliable GRB detection and analysis.


Project Structure

  • 1_GRB_detection.ipynb
    Constructs light curves from AstroSat CZTI data and applies multiple detrending filters (Savitzky-Golay, Median, Wavelet) to highlight potential transient features.

  • 2_pipeline.ipynb
    Performs peak detection using SNR analysis and n-sigma thresholding, followed by spectrogram generation and classification of events into:

    • Bang (GRB)
    • Blip (charged particle)
    • Background (noise)
  • report.pdf
    A detailed report explaining the physics motivation, methodology, detector details, results, and conclusions of the study.


Methods Overview

Data Processing

  • Raw CZTI quadrant and veto data parsed from .evt FITS files using astropy.
  • Binned into 1s and 10s light curves across multiple energy bands (20–100 keV for CZT and 100-500keV for Veto).

Detrending

Applied and compared:

  • Savitzky-Golay filtering (unsuitable due to peak smoothing)
  • Median filtering (best performance for impulsive events)
  • Wavelet denoising (balanced suppression but slightly smoothed peaks)
  • Matched filtering (template mismatch issues for GRBs)

Peak Detection

  • Used SNR calculation and 5σ thresholding to identify statistically significant events.
  • Spectrograms and energy-profile plots validate astrophysical signatures.

Classification Logic

  1. Bang (GRB): Multi-quadrant, multi-band, >5σ, power-law energy profile.
  2. Blip (Particle): Localized spike in one band/quadrant, 3σ–5σ range.
  3. Background: Instrumental artifacts, noise, or post-SAA glitches.

Instrument: AstroSat-CZTI

The Cadmium Zinc Telluride Imager (CZTI) onboard AstroSat (India’s first space observatory) operates in the 20–200 keV range with a wide field-of-view. Its veto detectors (100–500 keV) help eliminate cosmic ray contamination. The data are quadrant-resolved and sensitive to GRBs both on- and off-axis.


Key Results

  • Successfully recovered faint GRB candidates not captured by onboard triggers.
  • Validated peaks through spectrograms and energy evolution patterns.
  • Built a foundation for a future machine learning classifier on transient detection.

Future Work

  • Extend the classifier with a machine learning pipeline (GRB vs blip vs noise).
  • Integrate cross-matching with Fermi GBM/Swift BAT catalogs.
  • Automate SAA masking and real-time event flagging.
  • Tweak the pipeline more to make it highly robust and make the accuracy of flagging events to maximum

Requirements

  • Python 3.8+
  • numpy
  • pandas
  • matplotlib
  • scipy
  • astropy
  • pywt (for wavelets)
  • scikit-learn (for DBSCAN clustering)
  • seaborn
  • JupyterLab or Notebook

Install all dependencies:

pip install -r requirements.txt

About

Prompt analysis of Gamma Ray Bursts has always been a tough task . Here i have worked on AstroSat CZTI data to not just detect the signal or spike but also a proper analytical pipeline on classifying the signal into a GRB or a charged particle or noise by various conditions

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors