THOR (Transients at High Observed Redshifts) identifies distant Tidal Disruption Events (TDEs) in LSST data.
This work simulates expected rates, SEDs, and lightcurves for TDEs and other transients across redshifts. It filters the LSST alert stream for high redshift objects, through catalog crossmatching and photometric selection techniques.
Create an environement and install packages. For example:
git clone https://github.com/knolan10/THOR.git
cd THOR
uv venv --python 3.12 && source .venv/bin/activate
uv pip install -r requirementstxt
uv pip install -e .Some example notebooks demonstrate fetching and filtering LSST alerts, and visualizing the LSST alert stream.
To fetch and visualise LSST alerts for a given night, run:
python src/thor/summarize_rubin_alerts.py 07-01-2026 07-02-2026This uses the Babamul alert broker to fetch alerts, which requires user credentials stored in a .env file locally. Omit dates to default to the previous night. The generated skymap is saved to data/plots/
To fetch alerts, crossmatch against available catalogs, and save candidates, run:
python src/thor/crossmatch_alerts.py --start 06-28-2026 --end 06-30-2026 --additional_filtering tde_filterTo apply additional TDE-specific filtering, pass --additional_filtering tde_filter. Add flag --save_raw_alerts to save raw alerts to data/lsst_alert_download/raw_files/, and flag --save_results in order to save the crossmatch details locally to data/lsst_alert_download/. A summary of results will be printed in command line, but the --scan flag can also be included to open a temp jupyter notebook in browser and use Babamul's scanning tool.
Large data files (catalogs, simulation results, alert stream outputs) are not tracked in this repository. They are all saved locally in THOR/data.
In data/catalogs we keep all catalogs used for crossmatching. These catalogs are recorded in catalogs_catalog. Most catalogs used have had basic quality cuts to select only galaxies, and have been reduced to selected columns.
In data/lsst_alert_download we save LSST alerts fetched with the Babamul alert broker.
data/ also contains the Elassticc data used for contaminant transients for filter development. It contains the rubin pointing database used to simulate LSST lightcurves.
For questions Report an issue or reach out at kinolan@unc.edu.
This project was automatically generated using the LINCC-Frameworks python-project-template.