Skip to content
kfkaplan edited this page May 9, 2024 · 13 revisions

Python requirements

We highly recommend using Anaconda (https://anaconda.org) and the channel conda-forge for managing python and packages. For running the PLP, you can create a seperate conda enviroment but it is not a requirement.

The IGRINS pipeline version v3.0.0 and above runs in Python <= 3.11 and is currently incompatible with python 3.12.
The PLP runs in Linux or MacOS, but but might be installable in Windows (let us know if you get it running). Install python 3.11 and the latest version of the python dependencies below.

The PLP has the following python dependencies:

After installing Anaconda, below is an example of the commands you want to type into the terminal to create the a python environment (here called igrins-plp-env), install the various python dependencies

conda create --name igrins-plp-env --channel=conda-forge python=3.11
conda activate igrins-plp-env
conda install numpy
conda install scipy
conda install astropy
conda install matplotlib
conda install pandas
conda install simplejson
conda install astroscrappy

Install the PLP

To install the PLP, you can run "git clone" to clone master branch:

git clone https://github.com/igrins/plp.git

or download the most recent tarball of the PLP from the releases page.

Now go into the PLP directory

cd PLP

Now you need to give the PLP access to your IGRINS raw data. The "indata" directory should contain or point to the directory where the rawdata is organized by its UT date. For example, "indata/20140525" should contain data taken in 2014-05-25.

> ls indata/20140525
IGRINS_DT_Log_20140525-1_H.txt  SDCH_20140525_0083.fits
IGRINS_DT_Log_20140525-1_K.txt   SDCK_20140525_0001.fits
IGRINS_DT_Log_20140526-1_H.txt   SDCK_20140525_0002.fits
IGRINS_DT_Log_20140526-1_K.txt   SDCK_20140525_0003.fits
SDCH_20140525_0001.fits          SDCK_20140525_0004.fits
SDCH_20140525_0002.fits          SDCK_20140525_0005.fits
SDCH_20140525_0003.fits          SDCK_20140525_0006.fits
...

You can do this by either copying the raw data directly into the "indata" directory, or by creating a symbolic link for each night, or creating a symbolic link for the whole "indata" directory itself. See https://kb.iu.edu/d/abbe for how to create symbolic links.

Paths used by the PLP

Every night of IGRINS data is given a $UTDATE in the format YYYYMMDD. So if you took data on March 23, 2020, it would have the UTDATE of 20200323

The PLP uses various directories to store files. These are stored in the file recipe.config as follows

[DEFAULT]
MASTER_CAL_DIR=master_calib
INDATA_PATH=indata/%(UTDATE)s
OUTDATA_PATH=outdata/%(UTDATE)s
PRIMARY_CALIB_PATH=calib/primary/%(UTDATE)s
SECONDARY_CALIB_PATH=calib/secondary/%(UTDATE)s
QA_PATH=%(OUTDATA_PATH)s/qa
HTML_PATH=html/%(UTDATE)s
RECIPE_LOG_PATH=recipe_logs/%(UTDATE)s.recipes

Typically it's easiest to leave these unchanged, but they can be modified. The paths the user might be interested in modifying are:

  • recipe_logs - Where the files that tell the PLP how to reduce a night are stored

  • indata - Where the raw data are stored

  • outdata - Where the reduced data are stored

  • calib/primary - Where various intermediate calibration data products are stored such as wavelength solutions, order maps, etc.

    The main directories

Clone this wiki locally