ASCL poster on software citation at AAS 241

All posters at the 241st meeting of the American Astronomical Society were iPosters: displayed on a screen instead of printed on paper or fabric. The ASCL’s iPoster is available for viewing in the iPoster Gallery; the image below is a static screenshot.

Why others might not be citing your astronomy software

Screenshot of ASCL iPoster at AAS 241

Your codes can themselves be cited, and you can choose your preferred citation method! So why aren’t people citing your code? Come find out, and also learn what five steps you can take to improve citation of the software you write.

In the past decade, software citation has accelerated in astrophysics, resulting in the field now having multiple ways to cite computational methods. Adding software metadata files, such as a CITATION.cff or a codemeta.json file, to the root directory of a GitHub repo (or other code storage site) lets others know how they should cite that software. 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. In 2020, the Astrophysics Source Code Library (ASCL, ascl.net) sent authors of 135 codes software metadata files (CITATION.cff and codemeta.json), tailored to each computational method, and suggested that one of these files be edited as needed and included on their code site. In early 2021, we examined the code sites for these 135 entries and found that only 41% of these sites had citation information in any form available. In mid-2021, GitHub announced the integration of CITATION.cff into its service, making it easier to add this metadata file to one’s repo. Even so, as of January, 2023, 54% of the codes registered in the ASCL do not specify how to cite use of the software. The lack of citation 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 for the scientists who develop and maintain software.

#AAS241

December 2022 additions to the ASCL

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

AbundanceMatching: Subhalo abundance matching with scatter
BANZAI-NRES: BANZAI data reduction pipeline for NRES
Burning Arrow: Black hole massive particles orbit degradation
CONTROL: Colorado Ultraviolet Transit Experiment data reduction pipeline

Elysium: Observing black hole accretion disks
Eventdisplay: Analysis and reconstruction package for ground-based Gamma-ray astronomy
FastDF: Integrating neutrino geodesics in linear theory
GPry: Bayesian inference of expensive likelihoods with Gaussian processes

GWFAST: Fisher information matrix python package for gravitational-wave detectors
Hazma: Compute indirect detection constraints on sub-GeV dark matter
Infinity: Calculate accretion disk radiation forces onto moving particles
m2mcluster: Star clusters made-to-measure modeling

MGCosmoPop: Modified gravity and cosmology with binary black holes population models
MTNeedlet: Spherical maps filtering
Omega: Photon equations of motion
PACMAN: Planetary Atmosphere, Crust, and MANtle geochemical evolution

panco2: Pressure profile measurements of galaxy clusters
powspec: Power and cross spectral density of 2D arrays
PyMCCF: Python Modernized Cross Correlation Function for reverberation mapping studies
pyTANSPEC: Python tool for extracting 1D TANSPEC spectra from 2D images

sf_deconvolve: PSF deconvolution and analysis
SImMER: Stellar Image Maturation via Efficient Reduction
SourceXtractor++: Extracts sources from astronomical images
Spender: Neural spectrum encoder and decoder

Tranquillity: Creating black hole spin divergence plots
xwavecal: Wavelength calibrating echelle spectrographs

November 2022 additions to the ASCL

Twenty codes were added to the ASCL in November, 2022:

2DFFTUtils: 2DFFT Utilities implementation
AMBER: Abundance Matching Box for the Epoch of Reionization
APERO: A PipelinE to Reduce Observations
baobab: Training data generator for hierarchically modeling strong lenses with Bayesian neural networks
BiGONLight: Bi-local Geodesic Operators framework for Numerical Light propagation

BlackJAX: Library of samplers for JAX
EXCEED-DM: EXtended Calculation of Electronic Excitations for Direct detection of Dark Matter
fastSHT: Fast Spherical Harmonic Transforms
gsf: Grism SED Fitting package
H-FISTA: Phase retrieval for pulsar spectroscopy

KC: Analytical propagator with collision detection for Keplerian systems
Korg: 1D local thermodynamic equilibrium stellar spectral synthesis
mgcnn: Standard and modified gravity (MG) cosmological models classifier
ODNet: Asteroid occultation detection convolutional neural network
ovejero: Bayesian neural network inference of strong gravitational lenses

PAHDecomp: Decomposing the mid-IR spectra of extremely obscured galaxies
PDFchem: Average abundance of species from Av-PDFs
pmclib: Population Monte Carlo library
PTAfast: PTA correlations from stochastic gravitational wave background
unTimely_Catalog_explorer: A search and visualization tool for the unTimely Catalog

October 2022 additions to the ASCL

Thirty codes were added to the ASCL in October, 2022:

Blacklight: GR ray tracing code for post-processing Athena++ simulations
BornRaytrace: Weak gravitational lensing effects simulator
CK: Cloud modeling and removal
COMET: Emulated predictions of large-scale structure observables
cuvarbase: fast period finding utilities for GPUs

ExoRad2: Generic point source radiometric model
Faiss: Similarity search and clustering of dense vectors library
Finder_charts: Create finder charts from image data of various sky surveys
gbdes: DECam instrumental signature fitting and processing programs
iharm3d: Hybrid MPI/OpenMP 3D HARM with vectorization

ixpeobssim: Imaging X-ray Polarimetry Explorer simulator and analyzer
LavAtmos: Gas-melt equilibrium calculations for a given temperature and melt composition
LensingETC: Lensing Exposure Time Calculator
MCCD: Multi-CCD Point Spread Function Modelling
NEMESIS: Non-linear optimal estimator for multivariate spectral analysis

NIRDust: Near Infrared Dust finder for Type2 AGN K-band spectra
paltas: Simulation-based inference on strong gravitational lensing systems
PETSc: Portable, Extensible Toolkit for Scientific Computation
PGOPHER: Rotational, vibrational, and electronic spectra simulator
pixmappy: Python interface to gbdes astrometry solutions

POSYDON: Single and binary star population synthesis code
PSFr: Point Spread Function reconstruction
PSS: Pulsar Survey Scraper
PySME: Spectroscopy Made Easy reimplemented with Python
RADTRAN: General purpose planetary radiative transfer model

SHEEP: Machine Learning pipeline for astronomy classification
Solar-MACH: Multi-spacecraft longitudinal configuration plotter
SPINspiral: Parameter estimation for analyzing gravitational-wave signals
TSRecon: Time series reconstruction method of massive astronomical catalogs
tvguide: Observability by TESS

ASCL poster on software citation at ADASS XXXII


Are others using software you’ve written in their research and citing it as you want it to be cited? If not, this poster will help! Software can be cited in different ways, some good, and some not good at all for tracking and counting citations in indexers such as ADS and Google Scholar. Generally, indexers need to match citations to resources, such as journal articles, they ingest. There are several reasons why your code might not be cited well (in a trackable/countable way). One common reason is the lack of clear and explicit instructions on a code’s download site. Most astro code sites don’t list a preferred citation method! Make it easy for people to cite your software by listing a (good! trackable!) preferred citation method where others can easily find it. Creating a standard software metadata file, such as a CITATION.cff or codemeta.json, and adding it to the root of your code repo is easy to do with the ASCL’s metadata file creation overlay (see handout below), and will help out anyone wanting to give you credit for your computational method, whether it’s a huge carefully-written and tested package, or a short quick-and-dirty-but-oh-so-useful code.

#ADASSXXXI

Using the Astrophysics Source Code Library: Find, cite, download, parse, study, and submit

This morning, I gave a tutorial on the ASCL at ADASS XXXII, which is being held virtually from the University of Toronto and the University of Victoria. I’ll write more extensively about ADASS later this week; it is, as always, a fabulous conference with a lot of great work, talks, software, data, discussion, posters, chats, demos, tutorials… well, a lot! It’s my favorite astro conference.

But for now, slides from the tutorial and a link to the recording are below. Thanks to ADASS for accepting the proposal and to the participants for attending and for all the interesting (and occasionally scary!) comments and questions!

Slides (PDF)
Session (video)

September 2022 additions to the ASCL

Twenty codes were added to the ASCL in September, 2022:

A-SLOTH: Semi-analytical model to connect first stars and galaxies to observables
AMBER: Fast pipeline for detecting single-pulse radio transients
Cluster Toolkit: Tools for analyzing galaxy clusters
DeepMass: Cosmological map inference with deep learning
FastQSL: Quasi-separatrix Layers computation method

GaLight: 2D modeling of galaxy images
GRUMPY: Galaxy formation with RegUlator Model in Python
Herculens: Differentiable gravitational lensing
HyPhy: Hydrodynamical Physics via Deep Generative Painting
KaRMMa: Curved-sky mass map reconstruction

libTheSky: Compute positions of celestial bodies and events
PINION: Accelerating radiative transfer simulations for cosmic reionization
RAPOC: Rosseland and Planck mean opacities calculator
SCORE: Shape COnstraint REstoration
SolTrack: Compute the position of the Sun in topocentric coordinates

SpectraPy: Extract and reduce astronomical spectral data
SynPopIO: Synthetic Population of Interstellar Objects
TauREx3: Tau Retrieval for Exoplanets
URILIGHT: Time-dependent Monte-Carlo radiative-transfer
wsynphot: Synthetic photometry package using quantities

August 2022 additions to the ASCL

Twenty-five codes were added to the ASCL in August 2022:

Asymmetric Uncertainty: Handling nonstandard numerical uncertainties
BlaST: Synchrotron peak estimator for blazars
CRPropa3: Simulation framework for propagating extraterrestrial ultra-high energy particles
CubeFit: Regularized 3D fitting for spectro-imaging data
DELIGHT: Identify host galaxies of transient candidates

EstrellaNueva: Expected rates of supernova neutrinos calculator
FFD: Flare Frequency Distribution
GSSP: Grid Search in Stellar Parameters
GStokes: Magnetic field structure and line profiles calculator
HOCHUNK3D: Dust radiative transfer in 3D

J-comb: Combine high-resolution and low-resolution data
LeXInt: Leja Exponential Integrators
POIS: Python Optical Interferometry Simulation
PyNAPLE: Automated pipeline for detecting changes on the lunar surface
qrpca: QR-based Principal Components Analysis

RadioLensfit: Radio weak lensing shear measurement in the visibility domain
RJ-plots: Automated objective classification of 2D structures
Scatfit: Scattering fits of time domain radio signals (Fast Radio Bursts or pulsars)
SPAMMS: Spectroscopic PAtch Model for Massive Stars
ThermoEngine: Thermodynamic properties estimator and phase equilibrium calculator

toise: Performance estimator for high-energy neutrino detectors
TOM Toolkit: Target and Observation Manager Toolkit
uvcombine: Combine images with different resolutions
VapoRock: Modeling magma ocean atmospheres and stellar nebula
Yonder: Data denoising and reconstruction

Downloading and exploring ASCL information using our API and ADS

Did you know you can download all the ASCL’s entries? You can! If you want all accepted entries: https://ascl.net/code/json

If you want particular fields, use an API query. This query brings up ASCL ID, title, bibcode, and when the entry was last updated.
https://ascl.net/api/search/?q=abstract:%22%22&fl=ascl_id,title,bibcode,time_updated

Want only entries that list a preferred citation? This will do it: https://ascl.net/api/search/?q=citation_method:%22.%22&fl=ascl_id,title,bibcode,citation_method

Find more info on our API here: https://github.com/teuben/ascl-tools/tree/master/API

If you’d like to know more about our metadata schema, please see this page: https://ascl.net/wordpress/about-ascl/metadata-schema/ Screenshot of ADS home page with arrow pointing to ADS search box; the search box contains the search term bibstem:"ascl.soft"

You can also search ADS (https://ui.adsabs.harvard.edu) for ASCL entries by searching for bibstem:ascl.soft
https://ui.adsabs.harvard.edu/search/q=bibstem%3Aascl.soft&sort=date%20desc%2C%20bibcode%20desc&p_=0

 

Click the ADS Explore button on screen right and you can play with all kinds of info about ASCL entries, including citation metrics and concept clouds. Is there something else you’d like to see, another way you’d like ASCL entry data? Please let us know!Screenshot of ADS results page with arrow pointing to ADS Explore button

July 2022 additions to the ASCL

Thirty-five codes were added to the ASCL in July 2022:

Analysis of dipole alignment in large-scale distribution of galaxy spin directions
BANZAI: Beautiful Algorithms to Normalize Zillions of Astronomical Images
BAYGAUD: BAYesian GAUssian Decomposer
calviacat: Calibrate star photometry by catalog comparison
casa_cube: Display and analyze astronomical data cubes

ConeRot: Velocity perturbations extractor
cosmic-kite: Auto-encoding the Cosmic Microwave Background
disksurf: Measure the molecular emission surface of protoplanetary disks
DustPy: Simulation of dust evolution in protoplanetary disks
echelle: Dynamic echelle diagrams for asteroseismology

ExoCTK: Exoplanet Characterization Tool Kit
gwdet: Detectability of gravitational-wave signals from compact binary coalescences
Helios-r2: Bayesian nested-sampling retrieval code
LOTUS: 1D Non-LTE stellar parameter determination via Equivalent Width method
massmappy: Mapping dark matter on the celestial sphere

MCFOST: Radiative transfer code
MeSsI: MErging SystemS Identification
MULTIGRIS: Multicomponent probabilistic grid search
MultiModes: Efficiently analyze pulsating stars
MuSCAT2_transit_pipeline: MuSCAT2 photometry and transit analysis pipelines

ParticleGridMapper: Particle data interpolator
pdspy: MCMC tool for continuum and spectral line radiative transfer modeling
petitRADTRANS: Exoplanet spectra calculator
piXedfit: Analyze spatially resolved SEDs of galaxies
pocoMC: Preconditioned Monte Carlo method for accelerated Bayesian inference

pymcfost: pymcfost: Python interface to the MCFOST 3D radiative transfer code
pynucastro: Python interfaces to the nuclear reaction rate databases
Pyriod: Period detection and fitting routines
samsam: Scaled Adaptive Metropolis SAMpler
SolAster: ‘Sun-as-a-star’ radial velocity variations

SSHT: Fast spin spherical harmonic transforms
TESS_PRF: Display the TESS pixel response function
triple-stability: Triple-star system stability determinator
vKompth: Time-dependent Comptonization model for black-hole X-ray binaries
walter: Predictor for the number of resolved stars in a given observation from RST