GPCAL is a Python module for instrumental polarization calibration in VLBI data. It was designed to enhance the calibration accuracy by enabling users to fit the model to multiple calibrators data simultaneously and to take into account the calibrators linear polarization structures instead of using the conventional similarity assumption.
GPCAL is based on AIPS and uses ParselTongue, a Python interface to AIPS (Kettenis et al. 2006), to run AIPS tasks. ParselTongue can be easily installed by following the instructions here.
GPCAL is available on PyPi and can be installed via pip.
pip install gpcal
It should install most of the required libraries automatically (astropy, numpy, pandas , matplotlib, scipy).
Note that ParselTongue is based on Python 2. One of the easiest ways to avoid any conflicts in Python versions among different softwares is to create a new Anaconda environment for Python 2 and install ParselTongue there.
conda create -n myenv python=2.7
conda activate myenv
conda install -c kettenis parseltongue
Try to run ParselTongue in the environment and import gpcal. If users encounter an error message of "...no module named _bsddb." in astroplan, then install bsddb via Anaconda in the environment.
conda install -c free bsddb
There are example data and scripts in the "examples" folder. Tutorial slides using one of those data can be found here.
If you use GPCAL in your publication, please cite Park et al. 2021.
Let us know if you use GPCAL in your publication and we'll list it here!
- GPCAL: a generalized calibration pipeline for instrumental polarization in VLBI data, Park et al. 2021
- Jet Collimation and Acceleration in the Giant Radio Galaxy NGC 315 Park et al. 2021
- First M87 Event Horizon Telescope Results. VII. Polarization of the Ring EHT Collaboration et al. 2021
- A Revised View of the Linear Polarization in the Subparsec Core of M87 at 7 mm Park et al. 2021
GPCAL is licensed under GPLv2+. See LICENSE.txt for more details.