auto_selfcal does automatic self-calibration of ALMA and VLA with (almost) no effort from you. It can handle most forms of data, including single pointing and ALMA mosaics (VLA mosaics coming soon), ephemeris data, spectral scans, and more. See below to give it a try, or check out our more extensive documentation at https://auto-selfcal.readthedocs.io.
To use auto_selfcal with an existing monolithic CASA distribution:
git clone https://github.com/jjtobin/auto_selfcal.git
cd </path/to/pipeline/calibrated/*_targets.ms/files>
casa -c </path/to/auto_selfcal>/bin/auto_selfcal.pyOr to install into an existing Python environment (note that a Python version for which CASA is available is required) and run from a directory where pipeline-calibrated *_targets.ms files exist:
pip install auto-selfcal
cd </path/to/pipeline/calibrated/*_targets.ms/files>
auto_selfcalLove auto_selfcal and want to cite it? Please use:
@software{auto_selfcal,
author = {John J. Tobin and Patrick Sheehan and Rui Xue and Austen Fourkas},
title = {jjtobin/auto\_selfcal: v2.0.0},
month = dec,
year = 2025,
publisher = {Zenodo},
version = {v2.0.0},
doi = {10.5281/zenodo.17871742},
url = {https://doi.org/10.5281/zenodo.17871742},
}Certain functions to convert from LSRK to channel, S/N estimates, and tclean wrapper have their origins from the ALMA DSHARP large program reduction scripts.
The functions to parse the cont.dat file and convert to channel ranges (used the routine from above) was adapted from a function written by Patrick Sheehan for the ALMA eDisk large program