Skip to content

Pipeline Overview

Alex Thomas edited this page Sep 7, 2023 · 2 revisions

The easiest way to describe how the pipeline works is with an example. Here's a "standard" run, which aligns, subtracts (combining implicitly), and extracts transient candidates.

$ tripp read -d /path/to/fits_dir/ align subtract extract write -d /path/to/output

Running tripp alone will give you a list of commands that you can chain between read and write (you can also culminate in display rather than write, or do both in sequence).

The Details

The pipeline is basically like a game of hot potato. The first command goes and finds a potato, and then this potato is passed from command to command, with each command making changes to the potato as necessary.

HDULS

Each potato is an HDUL: a list of HDUs. Each HDUL can have any number of HDUs, each of which is referred to by an 'extname'. For example, LCO fits files unpack into HDULs with a 'SCI' HDU and 'CAT' hdu. hdul[extname] (e.g. hdul["CAT"]) will give you the HDU with the corresponding extname.

Testing

There exist unit tests for pipeline commands: fitsio (read and write), align, combine, extract, and subtract. These tests check that the outputs are valid and that click successfully invokes the respective command. To run a test for a specific command, simply run tripp test -n commandName. If no command name is given, all commands will be tested.

Note: "fitsio" will run both read and write. At this time, it is not possible to run tests on read and write separately.

Specific Topics:

AdaptiveBramich

Git Basics

Clone this wiki locally