Skip to content

pkgw/rubbl-rxpackage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rubbl-rxpackage

A collection of miscellaneous astronomical data reduction utilities written in Rust, based on the rubbl framework (“Rust + Hubble = rubbl = astrophysics in Rust”). These are mainly aimed at analyzing data from the Very Large Array, where the data sets can get very large. Certain data-intensive operations are too slow for Python, but I find working in C++ to be extremely unpleasant. Rust provides the speed of C++ but massively improved ergonomics.

The name rxpackage is my shorthand for “[data] reduction package”.

Available tools

  • rubbl rxpackage flagts — print a time series of flagging statistics
  • rubbl rxpackage peel — use source-specific calibration tables to implement “peeling” of a bright off-axis source. The intended workflow with which this tool assists is described briefly in the research note Williams et al., 2019 RNAAS 3 110 (DOI: 10.3847/2515-5172/ab35d5).
  • rubbl rxpackage spwglue — combine adjacent spectral windows into one big one

There are also:

  • rubbl rxpackage show version-doi — show the DOI of the current version of the software package; you can use this for citing rubbl-rxpackage
  • rubbl rxpackage show concept-doi — show the "concept DOI" of rubbl-rxpackage; this is included for completeness but is probably not what you want. If in doubt, use the version-doi command.

Installation

Prebuilt binaries are not provided. You need a Rust build toolchain installed. If it's available, installation should be possible by just running:

cargo install --force --path .

That will make available the command-line program rubbl-rxpackage. If you’ve got the core rubbl command installed, the tools should also be accessible by running rubbl rxpackage.

Versioning

When you check out the main branch, you might notice that everything is built with version 0.0.0. This is because this project uses the just-in-time versioning workflow as implemented by Cranko. Version numbers are assigned inside the CI/CD pipeline. See the GitHub release history for release history and changelogs.

Citation

If you use this software in academic work, you must cite it appropriately in your research outputs.

To do so, you should reference two things: the entity that is the specific version of the software you used, and the publication that describes that software. Both of these things have DOIs, but they are different things with different DOIs.

In particular:

  • To cite the software itself, obtain the DOI of the release that you're running by executing the command rubbl rxpackage show version-doi. To create a BibTeX entry corresponding to that release, point your browser to https://doi.org/{the-version-doi}, which should take you to the Zenodo landing page for the release. Then find and follow the “BibTeX export” link.
  • You should also cite the publication describing the software, Williams et al., 2019 RNAAS 3 110, which has DOI 10.3847/2515-5172/ab35d5. Here is a BibTeX entry for this publication:
    @article{Williams_2019,
      doi = {10.3847/2515-5172/ab35d5},
      url = {https://doi.org/10.3847%2F2515-5172%2Fab35d5},
      year = 2019,
      month = {jul},
      publisher = {American Astronomical Society},
      volume = {3},
      number = {7},
      pages = {110},
      author = {P. K. G. Williams and K. N. Allers and B. A. Biller and J. Vos},
      title = {A Tool and Workflow for Radio Astronomical {\textquotedblleft}Peeling{\textquotedblright} in {CASA}},
      journal = {Research Notes of the {AAS}}
    }
    
  • There is nothing wrong with linking to this software’s GitHub repository for completeness, but such a link does not have long-term archival guarantees and is not “dereferenceable” by metadata tools.
  • Adding everything up, in a gold-standard publication you might write:
    The open-source software package
    \textsf{rubbl-rxpackage}\footnote{Development currently hosted at
    \url{https://github.com/pkgw/rubbl-rxpackage}.} provides tools for
    implementing interferometric ``peeling'' \citep{Williams_2019}. We performed
    this procedure, using the workflow described by \citet{Williams_2019}, with
    version 0.1.0 of the software, which is archived in Zenodo
    \citep{rubbl_rxpackage_0.1.0}.
    

Legalities

These files are copyright Peter Williams and collaborators. They are licensed under the MIT license.

About

Radio astronomy reduction utilities written in Rust, using the Rubbl framework

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages