Author Archives: Alice Allen

ROSA2022: Reproducibility and Open Science in Astronomy workshop

This week, I’m attending and speaking at the ESO-sponsored Reproducibility and Open Science in Astronomy workshop. The first day was fabulous! The workshop runs through Thursday.

My talk is Opening the computational box: software sharing and the ASCL, and the abstract and links to resources mentioned in the talk are below.

Though computational methods are widely used in many disciplines, many researchers do not share the source code they develop, making their research difficult to verify and replicate. This presentation focuses on what software users and authors can do to share codes effectively, increase research reproducibility, and meet new requirements established by funders and journals. It will also cover how the Astrophysics Source Code Library (ASCL) improves the transparency of science by registering research code, its efforts to increase software findability, and how astronomers can get credit for their codes and better support the research record.

Slides (PDF)

Journals

Journal of Open Source Software (JORS)

Astronomy and Computing (A&C)

SoftwareX

Journal of Open Source Software (JOSS)

Computing and Software for Big Science

Research Notes of the AAS

Change leaders, guidelines, and tools

SciCodes/Nine Best Practices for Software Registries and Repositories

FORCE11/FORCE11 Software Citation Principles

Research Data Alliance/FAIR for Research Software (FAIR4RS) WG

CodeMeta/CodeMeta generator

CITATION file format (CFF)/CFF INIT

CiteAs

FAIR principles

Social coding sites and archival services

Bitbucket

GitLab

GitHub

Software Heritage

Figshare

Zenodo

Other resources and fun links

Asclepias

arXiv/arXiv Next Generation

DataCite

All ASCL entries in JSON

ASCL dashboard

Generating software metadata files from an ASCL entry:
codemeta.json example
CITATION.cff example

How many GitHub repos have CITATON.cff files/codemeta.json files?

April 2022 additions to the ASCL

Twenty codes were added to the ASCL in April 2022:

ADBSat: Aerodynamic Database for Satellites
Astroplotlib: Python scripts to handle astronomical images
Bayesian SZNet: Bayesian deep learning to predict redshift with uncertainty
DarkFlux: Dark Matter annihilation spectrum computer
dsigma: Galaxy-galaxy lensing Python package

FBCTrack: Fragmentation and bulk composition tracking
GADGET-4: Parallel cosmological N-body and SPH code
legacystamps: Retrieve DESI Legacy Imaging Surveys cutouts
MAYONNAISE: ADI data imaging processing pipeline
MonoTools: Planets of uncertain periods detector and modeler

ProFuse: Physical models of galaxies and their components
pySIDES: Simulated Infrared Dusty Extragalactic Sky in Python
RMNest: Bayesian approach to measuring Faraday rotation and conversion in radio signals
RSG: Redshift Search Graphs
RTS: Radio Transient Simulations

SCRIPT: Semi-numerical Code for ReIonization with PhoTon-conservation
SimAb: Planet formation model
SpECTRE: Multi-scale, multi-physics problem solver
TESS-Localize: Localize variable star signatures in TESS Photometry
TG: Turbulence Generator

March 2022 additions to the ASCL

Thirty-one codes were added to the ASCL in March 2022:

agnpy: Modeling jetted Active Galactic Nuclei radiative processes with Python
AutoSourceID-Light: Source localization in optical images
axionCAMB: Modification of the CAMB Boltzmann code
Bootsik: Potential field calculator

D2O: Distributed Data Object
easyFermi: Fermi-LAT data analyzer
exoVista: Planetary systems generator
fleck: Fast starspot rotational modulation light curves

GAMERA: Source modeling in gamma astronomy
imexam: IMage EXAMination and plotting
Magrathea-Pathfinder: 3D AMR ray-tracing in simulations
MAGRATHEA: Multi-processor Adaptive Grid Refinement Analysis for THEoretical Astrophysics

MAMPOSSt: Mass/orbit modeling of spherical systems
MaNGA-DAP: MaNGA Data Analysis Pipeline
MaNGA-DRP: MaNGA Data Reduction Pipeline
MG-MAMPOSSt: Test gravity with the mass profiles of galaxy clusters

MIRaGe: Multi Instrument Ramp Generator
NIMBLE: Non-parametrIc jeans Modeling with B-spLinEs
PetroFit: Petrosian properties calculator and galaxy light profiles fitter
pygacs: Toolkit to manipulate Gaia catalog tables

pyobs: Python framework for autonomous astronomical observatories
SATCHEL: Pipeline to search for long-period exoplanet signals
SetCoverPy: A heuristic solver for the set cover problem
SimLine: Radiative transfer in molecular lines

SISTER: Starshade Imaging Simulation Toolkit for Exoplanet Reconnaissance
starry_process: Interpretable Gaussian processes for stellar light curves
sympy2c: Generating fast C/C++ functions and ODE solvers from symbolic expressions
TAWAS: Wave equation solver

Vetting: Stand-alone tools for vetting transit signals in Kepler, K2 and TESS data
Wigglewave: Linearized governing equations solver
Zoobot: Deep learning galaxy morphology classifier

February 2022 additions to the ASCL

Twenty-six codes were added to the ASCL in February 2022:

ASPIRED: Automated SpectroPhotometric Image REDuction
Citlalicue: Create and manipulate stellar light curves
Contaminante: Identify blended targets in Kepler, TESS, and K2 data
distance-omnibus: Distance estimation method for molecular cloud clumps in the Milky Way

EDIV: Exoplanet Detection Identifier Vetter
EDIVU: Exoplanet Detection Identifier Vetter Unplugged
fiducial_flare: Spectra and lightcurves of a standardized far ultraviolet flare
Find_Orb: Orbit determination from observations

FIRE Studio: Movie making utilities for the FIRE simulations
GA Galaxy: Interacting galaxies model fitter
GALLUMI: GALaxy LUMInosity function pipeline
INSANE: INflationary potential Simulator and ANalysis Engine

NWelch: Spectral analysis of time series with nonuniform observing cadence
palettable: Color palettes for Python
popsynth: Observed surveys from latent population models
PSLS: PLATO Solar-like Light-curve Simulator

RFEP: Residual Feature Extraction Pipeline
SciCatalog: Tools for scientific data catalogs
Sculptor: Interactive modeling of astronomical spectra
SPARTAN: SPectroscopic And photometRic fiTting tool for Astronomical aNalysis

Starduster: Radiative transfer and deep learning multi-wavelength SED model
SunnyNet: Neural network framework for solving 3D NLTE radiative transfer in stellar atmospheres
SUPPNet: Neural network for stellar spectrum normalization
TERRA: Transit detection code

topoaccel: Topological acceleration scripts
Zwindstroom: Cosmological growth factors from fluid calculations

January 2022 additions to the ASCL

Fourteen codes were added to the ASCL in January 2022:

AllStarFit: R package for source detection, PSF and multi-component galaxy fitting
AltaiPony: Flare finder for Kepler, K2, and TESS light curves
AstroToolBox: Java tools for identifying and classifying astronomical objects
BLOSMapping: Determine line-of-sight magnetic fields of molecular clouds
COWS: Cosmic web filament finder

dark-photons-perturbations: Dark photon conversions in our inhomogeneous Universe
disnht: Absorption spectrum solver
EzTao: Easier CARMA Modeling
fermi-gce-flows: Infer the Galactic Center gamma-ray excess
FitsMap: Interactive astronomical image and catalog data visualizer

MAGRATHEA: Planet interior structure code
nProFit: n-Profile Fitting Tool
statmorph: Non-parametric morphological diagnostics of galaxy images
tellrv: Radial velocities for low-resolution NIR spectra

December 2021 additions to the ASCL

Twenty-seven codes were added to the ASCL in December 2021:

AsteroGaP: Asteroid Gaussian Processes
BayesicFitting: Model fitting and Bayesian evidence calculation package
DarkARC: Dark Matter-induced Atomic Response Code
deeplenstronomy: Pipeline for versatile strong lens sample simulations
Defringe: Fringe artifact correction

DiracVsMajorana: Statistical discrimination of sub-GeV Majorana and Dirac dark matter
FTP: Fast Template Periodogram
GRIT: Gravitational Rigid-body InTegrators for simulating coupled dynamics
hankl: Python implementation of the FFTLog algorithm for cosmology
HoloSim-ML: Analyzing radio holography measurements of complex optical systems

Interferopy: Analyzing datacubes from radio-to-submm observations
JexoSim 2.0: JWST Exoplanet Observation Simulator
l1p: Python implementation of the l1 periodogram
MISTTBORN: MCMC Interface for Synthesis of Transits, Tomography, Binaries, and Others of a Relevant Nature
NeutrinoFog: Neutrino fog and floor for direct dark matter searches

O’TRAIN: Optical TRAnsient Identification NEtwork
Optab: Ideal-gas opacity tables generator
pycelp: Python package for Coronal Emission Line Polarization
QUESTFIT: Fitter for mid-infrared galaxy spectra
Qwind: Non-hydrodynamical model for AGN line-drive winds

Qwind3: Modeling UV line-driven winds originating from accretion discs
SAPHIRES: Stellar Analysis in Python for HIgh REsolution Spectroscopy
SCORPIO: Sky COllector of galaxy Pairs and Image Output
STDPipe: Simple Transient Detection Pipeline
TESSreduce: Transient focused reduction for TESS data

WIMpy_NREFT: Dark Matter direct detection rates detector
wpca: Weighted Principal Component Analysis in Python

WE20211204: This week in the ASCL

It was a loud week at ASCL Central, what with a backhoe and a couple of Bobcats working outside, so I decamped to my office at UMD for a couple of days to get away from the noise and, especially, the diesel exhaust. It was also a productive week, with eighteen entries added to the ASCL, two records curated, and notification emails sent out. I submitted my proceedings paper for ADASS. A paper submitted in September came back from review, and we’ve started a series of writing sprints to address the reviewers’ concerns; the paper will be resubmitted before the end of the year. I also did some organizing work to prepare for this coming week’s FORCE2021 Hackathons; the SciCodes consortium hopes to make progress on several items during this event, which will be held on Monday and Friday. Come join us!

A very muddy backyard with a backhoe in it

In the dawn’s early light, a lot of mud.

November 2021 additions to the ASCL

Eighteen codes were added to the ASCL in November:

astroDDPM: Realistic galaxy simulation via score-based generative models
Astrosat: Satellite transit calculator
CEvNS: Calculate Coherent Elastic Neutrino-Nucleus Scattering cross sections and recoil spectra
COCOPLOT: COlor COllapsed PLOTting software
CoLoRe: Cosmological Lofty Realization
flatstar: Make 2d intensity maps of limb-darkened stars

gCMCRT: 3D Monte Carlo Radiative Transfer for exoplanet atmospheres using GPUs
GWToolbox: Gravitational wave observation simulator
JAX: Autograd and XLA
LEGWORK: LISA Evolution and Gravitational Wave ORbit Kit
Nii: Multidimensional posterior distributions framework
NLopt: Nonlinear optimization library

p-winds: Python implementation of Parker wind models for planetary atmospheres
prose: FITS images processing pipeline
PSwarm: Global optimization solver for bound and linear constrained problems
pySYD: Measuring global asteroseismic parameters
SteParSyn: Stellar atmospheric parameters using the spectral synthesis method
UniMAP: Unicorn Multi-window Anomaly Detection Pipeline

Citation method, please? A case study in astrophysics

I did an experiment last year to see whether I could influence software authors to add either CITATION.cff or codemeta.json files to their repos to make clear how the software should be cited. It mostly didn’t work, but was still a useful exercise. I’ve written a short paper about it that will appear on arXiv tonight (ETA: here) and is available now at the link below.


Abstract: Software citation has accelerated in astrophysics in the past decade, resulting in the field now having multiple trackable ways to cite computational methods. Yet most software authors do not specify how they would like their code to be cited, while others specify a citation method that is not easily tracked (or tracked at all) by most indexers. Two metadata file formats, codemeta.json and CITATION.cff, developed in 2016 and 2017 respectively, are useful for specifying how software should be cited. In 2020, the Astrophysics Source Code Library (ASCL, ascl.net) undertook a year-long effort to generate and send these software metadata files, specific to each computational method, to code authors for editing and inclusion on their code sites. We wanted to answer the question, “Would sending these files to software authors increase adoption of one, the other, or both of these metadata files?” The answer in this case was no. Furthermore, only 41% of the 135 code sites examined for use of these files had citation information in any form available. The lack of such information creates an obstacle for article authors to provide credit to software creators, thus hindering citation of and recognition for computational contributions to research and the scientists who develop and maintain software.

Citation method, please? A case study in astrophysics (PDF)

WE20211113: This week in the ASCL

A busy week, but more on the organizing and writing side than actual work on the ASCL itself. One of the organizational tasks was for a Deep Dive webinar on software citation for FORCE2021; this is a dedicated session presented by the FORCE11 Software Citation Implementation Working Group (SCIWG), and will be held on Tuesday, December 7 at 17:00 UTC. Several lightning talks will be presented on the work of the SCIWG, what challenges still exist, and work that is planned in the future, and then the floor will be opened for discussion among presenters and attendees. I wrote a first draft (which I expect is pretty close to the final draft) of a proceedings paper for last month’s ADASS meeting, this for the poster I presented. By “wrote,” I mean “mostly fought with LaTeX,” since that struggle took the majority of the time spent on the paper. On the ASCL itself, seven entries were curated and three new entries were staged.