This repository contains the source code for generating rich multiwavelength data tables (a.k.a. the "mega-tables") for the PHANGS team. The current state of this repository matches the version 4.2 internal release of the PHANGS mega-table products. The latest published version of the PHANGS mega-table products is version 4.0 (in the PHANGS CADC archive).
The structure and content of these mega-tables are described in the following papers:
- Sun, Leroy, Rosolowsky, et al. (2022), "Molecular Cloud Populations in the Context of Their Host Galaxy Environments: A Multiwavelength Perspective"
- Sun, Leroy, Ostriker, et al. (2023), "Star Formation Laws and Efficiencies across 80 Nearby Galaxies"
Below is a figure from Sun et al. (2022) showing part of the data aggregation workflow:
[Important note] If you want to use the PHANGS mega-table products but do not plan to ingest more data into them or make your own mega-tables, you likely do not need the code in this repository. The PHANGS mega-table products (available in the CADC archive, see link above) can be read in and analyzed with astropy.table.Table
.
This repository offers a python module named mega_table
, which provides the core infrastructure for mega-table creation, manipulation, and input/output. Most of the tools in this module are offered through three python classes:
mega_table.table.RadialMegaTable
: Assemble measurements in radial bins with a given widthmega_table.table.TessellMegaTable
: Assemble measurements according to a given tessellation patternmega_table.table.ApertureMegaTable
: Assemble measurements in arbitrarily placed, fixed size apertures
In addition, the pipelines
directory includes the actual production code for the PHANGS mega-table products. We publish all code here for reproducibility and hope that this serves as a template for creating mega-tables possibly for different targets with different sets of data. Key files in this directory include:
config_data_path.json
: This file specifies the path to the underlying datasets on diskconfig_tables.json
: This file provides input parameters for table creation (e.g., table naming convention, bin width, FoV extent)format_*.csv
: These files controls the column-by-column content of the output tables (e.g., column names, physical units, descriptions)make_*.py
: These are the python scripts that create mega-tables from scratch and ingest multiwavelength measurements into them
The core mega_table
module depends on the following packages:
If you would like to modify and run the scripts in the pipelines
directory (e.g., to make your own mega-tables for some other galaxies), then you may also need the following packages depending on which part of the script is relevant:
If you need help using the code in this repository for science applications, please reach out to Jiayi Sun. For bug reports and improvement suggestions, please open an Issue on Github.