https://github.com/RadioAstronomySoftwareGroup/pyuvdata
Revision 240c8812a3630abaecc7ce9c4441967d64e88d29 authored by Garrett 'Karto' Keating on 06 August 2024, 20:59:25 UTC, committed by Garrett 'Karto' Keating on 27 August 2024, 15:38:27 UTC
1 parent 111a181
Tip revision: 240c8812a3630abaecc7ce9c4441967d64e88d29 authored by Garrett 'Karto' Keating on 06 August 2024, 20:59:25 UTC
More paper updates
More paper updates
Tip revision: 240c881
paper.md
---
title: 'pyuvdata v3: an interface for astronomical interferometeric datasets in python'
tags:
- radio astronomy
- uvfits
- miriad
authors:
- name: Garrett K. Keating
orcid: 0000-0002-3490-146X
affiliation: 1
- name: Bryna J. Hazelton
orcid: 0000-0001-7532-645X
affiliation: 2, 3
- name: Matthew Kolopanis
orcid: 0000-0002-2950-2974
affiliation: 4
- name: Steven Murray
orcid: 0000-0003-3059-3823
affiliation: 4
- name: Adam P. Beardsley
orcid: 0000-0001-9428-8233
affiliation: 5
- name: Daniel C. Jacobs
orcid: 0000-0002-0917-2269
affiliation: 3
- name: Nicholas Kern
affiliation: 6
orcid: 0000-0002-8211-1892
- name: Adam Lanman
affiliation: 7
orcid: 0000-0003-2116-3573
- name: Paul La Plante
affiliation: 8
orcid: 0000-0002-4693-0102
- name: Jonathan C. Pober
orcid: 0000-0002-3492-0433
affiliation: 9
- name: Pyxie Star
orcid: XXXX-XXXX-XXXX-XXXX
affiliation: 2
affiliations:
- name: Center for Astrophysics | Harvard & Smithsonian
index: 1
- name: University of Washington, eScience Institute
index: 2
- name: University of Washington, Physics Department
index: 3
- name: Scuola Normale Superiore, Italy
index: 4
- name: Winona State University, Physics Department
index: 5
- name: Massachusetts Institute of Technology, Physics Department
index: 6
- name: Kavli Institute of Astrophysics and Space Research
index: 7
- name: University of Nevada, Las Vegas, Department of Computer Science
index: 8
- name: Brown University, Physics Department
index: 9
date: 2 July 2024
bibliography: paper.bib
---
# Summary
pyuvdata is an open-source software package that seeks to provide a well-documented,
feature-rich interface for many of the different data formats that exist within radio
interferometry, including support for reading and writing UVH5 [@uvh5], UVFITS
[@uvfits], MIRIAD [@miriad], and measurement set [@ms] visibility files; and reading of
FHD [@fhd] and MIR [@mir] visibility save files. Additionally, pyuvdata supports reading
and writing measurement set, CalFITS [@calfits], and CalH5 (Hazelton et al., _in prep_)
calibration solutions; and reading of FHD calibration solutions. pyuvdata also provides
interfaces for and handling of models of antenna primary beams, including reading and
writing of BeamFITS [@beamfits], and reading CST and MWA beam formats, as well as for flags.
# Statement of Need
There are several standard formats for astronomical interferometric data, but
converting between them in a stable, repeatable way has historically been
challenging. This is partially due to conflicting assumptions and standards, giving
rise to significant (though sometimes subtle) differences between formats.
Interfacing with different data formats -- like one does when they convert from one
format to another -- thus requires careful accounting for the complex mathematical
relationships between both data and metadata to ensure proper data fidelity. This is
required both for leveraging existing community-favored tools that typically built
to interface with a specific data format, as well as analyses requiring bespoke tools
for specialized types of analyses and simulations leveraging data in a variety of
formats.
pyuvdata has been designed to facilitate interoperability between different instruments
and codes by providing high quality, well documented conversion routines as well as an
interface to interact with interferometric data and simulations directly in Python.
Originally motivated to support new low frequency instruments (e.g. MWA
(http://www.mwatelescope.org/), PAPER (http://eor.berkeley.edu/), HERA
(http://reionization.org/)), the capabilities of pyuvdata have been steadily expanded
to support handling of data from several telescopes, ranging from meter to submillimeter
wavelengths, including SMA, ALMA, SMA, VLA, ATCA, CARMA, LWA, among others.
# Major updates in this version
In the time since it was initially published [@pyuvdata_v1], pyuvdata has undergone a
significant expansion in capabilities. In addition to general performance improvements
and restructuring, the newest version of pyuvdata includes several new major features,
including:
- The addition of the `UVCal` class, which provides a container for handling calibration
solutions (bandpass, delays, and gains) for interferometric data. Supported data formats
include MS, FHD, CalFITS, and CalH5.
- The addition of the `UVBeam` class, which provides a container for handling models
of the primary beam for antennas within an interferometric array. Supported data formats
include BeamFITS, MWA, and CST.
- The addition of the `UVFlag` class, which provides a container for handling flags/masking
of bad data for visibility data.
- Drastically improved handling of astrometry and increased speed and accuracy of algorithms
used to ``phase-up'' data (i.e., change the sky position where the interferometer is centered
up on).
- Support for several new visibility data formats, including MIR, MS, and MWA/MWAX.
- Support for data sets containing multiple spectral windows.
- Support for data sets containing observations of multiple sources/phase centers.
-Many new convenience methods for working with interferometric data, including splitting and combining data sets, averaging in time and frequency and applying calibration solutions and flags.
# References
Computing file changes ...