Category Archives: news

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

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

October 2021 additions to the ASCL

Twenty-two codes were added to the ASCL in October:

ArtPop: Artificial Stellar Populations generator
BASTA: BAyesian STellar Algorithm
BCES: Linear regression for data with measurement errors and intrinsic scatter
exodetbox: Finding planet-star projected separation extrema and difference in magnitude extrema
FEniCS: Computing platform for solving partial differential equations

Flux: Julia machine learning library
GGCHEMPY: Gas-Grain CHEMical code for interstellar medium in Python3
GRASS: GRanulation and Spectrum Simulator
JWSTSim: Geometric-Focused JWST Deep Field Image Simulation
Nauyaca: N-body approach for determining planetary masses and orbital elements

ParSNIP: Parametrization of SuperNova Intrinsic Properties
PISCOLA: Python for Intelligent Supernova-COsmology Light-curve Analysis
PSRDADA: Distributed Acquisition and Data Analysis for Radio Astronomy
PT-REX: Point-to-point TRend EXtractor
pyro: Deep universal probabilistic programming with Python and PyTorch

Quokka: Two-moment AMR radiation hydrodynamics on GPUs for astrophysics
SELCIE: Screening Equations Linearly Constructed and Iteratively Evaluated
swordfish: Information yield of counting experiments
TauRunner: Code to propagate tau neutrinos at very high energies
ThERESA: 3D Exoplanet Cartography

TULIPS: Tool for Understanding the Lives, Interiors, and Physics of Stars
XookSuut: Model circular and noncircular flows on 2D velocity maps

September 2021 additions to the ASCL

Thirty codes were added to the ASCL in September:

alpconv: Calculating alp-photon conversion
BHJet: Semi-analytical black hole jet model
BiPoS1: Dynamical processing of the initial binary star population
DviSukta: Spherically Averaged Bispectrum calculator
eMCP: e-MERLIN CASA pipeline

Frankenstein: Flux reconstructor
gammaALPs: Conversion probability between photons and axions/axionlike particles
GLoBES: General Long Baseline Experiment Simulator
gphist: Cosmological expansion history inference using Gaussian processes
Healpix.jl: Julia-only port of the HEALPix library

HSS: The Hough Stream Spotter
HTOF: Astrometric solutions for Hipparcos and Gaia intermediate data
Menura: Multi-GPU numerical model for space plasma simulation
OSPREI: Sun-to-Earth (or satellite) CME simulator
pyFFTW: python wrapper around FFTW

pyia: Python package for working with Gaia data
Rubble: Simulating dust size distributions in protoplanetary disks
ShapeMeasurementFisherFormalism: Fisher Formalism for Weak Lensing
SkyCalc_ipy: SkyCalc wrapper for interactive Python
SkyPy: Simulating the astrophysical sky

SNEWPY: Supernova Neutrino Early Warning Models for Python
Snowball: Generalizable atmospheric mass loss calculator
SNOwGLoBES: SuperNova Observatories with GLoBES
SoFiA 2: An automated, parallel HI source finding pipeline
STAR-MELT: STellar AccrRtion Mapping with Emission Line Tomography

unpopular: Using CPM detrending to obtain TESS light curves
Varstar Detect: Variable star detection in TESS data
VOLKS2: VLBI Observation for transient Localization Keen Searcher
WeakLensingDeblending: Weak lensing fast simulations and analysis of blended objects
WimPyDD: WIMP direct–detection rates predictor

August 2021 additions to the ASCL

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

AMOEBA: Automated Gaussian decomposition
AUM: A Unified Modeling scheme for galaxy abundance, galaxy clustering and galaxy-galaxy lensing
AutoProf: Automatic Isophotal solutions for galaxy images
BOSS-Without-Windows: Window-free analysis of the BOSS DR12 power spectrum and bispectrum
caesar-rest: Web service for the caesar source extractor

CatBoost: High performance gradient boosting on decision trees library
catwoman: Transit modeling Python package for asymmetric light curves
Chemulator: Thermochemical emulator for hydrodynamical modeling
CMC-COSMIC: Cluster Monte Carlo code
Cosmic-CoNN: Cosmic ray detection toolkit

COSMIC: Compact Object Synthesis and Monte Carlo Investigation Code
DBSP_DRP: DBSP Data Reduction Pipeline
ELISa: Eclipsing binaries Learning Interactive System
ExoPlaSim: Exoplanet climate simulator
FIREFLY: Chi-squared minimization full spectral fitting code

HRK: HII Region Kinematics
iminuit: Jupyter-friendly Python interface for C++ MINUIT2
MAPS: Multi-frequency Angular Power Spectrum estimator
millennium-tap-query: Python tool to query the Millennium Simulation UWS/TAP client
NRDD_constraints: Dark Matter interaction with the Standard Model exclusion plot calculator

PIPS: Period detection and Identification Pipeline Suite
SORA: Stellar Occultation Reduction Analysis
StelNet: Stellar mass and age predictor
viper: Velocity and IP EstimatoR
WaldoInSky: Anomaly detection algorithms for time-domain astronomy

Best Practices for Software Registries and Repositories

by Alejandra Gonzalez-Beltran, Alice Allen, Allen Lee, Daniel Garijo, Thomas Morrell, SciCodes Consortium

This post is cross-posted on the SciCodes website, the US Research Software Sustainability Institute blog, the UK Software Sustainability Institute blog, and the FORCE11 blog.

Software is a fundamental element of the scientific process, and cataloguing scientific software is helpful to enable software discoverability. During the years 2019-2020, the Task Force on Best Practices for Software Registries of the FORCE11 Software Citation Implementation Working Group worked to create Nine Best Practices for Scientific Software Registries and Repositories. In this post, we explain why scientific software registries and repositories are important, why we wanted to create a list of best practices for such registries and repositories, the process we followed, what the best practices include, and what the next steps for this community are.

Why are scientific software registries and repositories important?

Scientific software registries and repositories support identifying and finding software, provide information for software citation, foster long-term preservation and reuse of computational methods, and ultimately, improve research reproducibility and replicability.

Why did we write these guidelines?

Managers of scientific software registries and repositories have been working independently to run their services and provide useful information and tools to users in different communities. The Best Practices for Software Registries Task Force participants had different perspectives representing a heterogeneous set of resources, but came together for the common goal of creating a list of best practices for scientific software registries. These shared practices help to raise awareness of software as a research output, enable credit for software creators, and guide curators working on software catalogues through the steps to consider when setting up their software registries. In the longer term, we hope to improve the interoperability of the software metadata supported by different services.

The goals that we considered for writing the guidelines were:

  • to have a minimal number of best practices, easy to adopt by repository managers
  • to be broadly applicable to most or all of our resources
  • to be descriptive on a meta level, not prescriptive, and focused on what the best practices should do or provide, not on what a suggested policy or element should specifically say.

What are the best practices?

Our guidelines, listed below, provide an overview of the key points to take into consideration when creating a software registry. They are:

  • Provide a public scope statement (examples)
  • Provide guidance for users
  • Provide guidance to software contributors
  • Establish an authorship policy (examples)
  • Share your metadata schema (examples)
  • Stipulate conditions of use (examples)
  • State a privacy policy (examples)
  • Provide a retention policy (examples)
  • Disclose your end-of-life policy (examples)

Our pre-print offers more explanation about each guideline and a longer list of implementations that we found when we were doing our work on these practices.

What process did we follow to produce the guidelines?

Representatives from numerous software registries and repositories were involved in the FORCE11 Software Citation Implementation Working Group (SCIWG). Alice Allen proposed that we form a task force within the SCIWG for writing up some best practices for the registries and repositories, and with acceptance by the co-chairs of the SCIWG and interest from relevant people, the Task Force on Best Practices for Software Registries was formed. Initially, we gathered information from members of this Task Force to learn more about each resource and to identify some of our overlapping interests. We then identified potential best practices based on prior issues we experienced running our services and  discussed what each potential practice might include or exclude.

Through iterative deliberations, we determined which of the potential practices were the most broadly applicable. With generous funding from the Alfred P. Sloan Foundation, we hosted a workshop for scientific registries and repositories, part of which was devoted to gathering final consensus around the Best Practices.  The workshop included registries who were not part of the Task Force, resulting in a broader set of contributions to the final list.

What are the next steps for the group?

Our goal is to continue our efforts by implementing these practices more uniformly in our own registries and repositories and reducing the burdens of adoption. We have created SciCodes, a consortium of scientific software registries and repositories, which is now defining the next priorities to tackle, such as tracking the impact of good metadata, improving interoperability between registries, and making our metadata more discoverable by search engines and services such as Google Scholar, ORCID, and discipline indexes. We are also sharing tools and ideas in a series of presentations that are recorded and available for viewing on the SciCodes website, so please check them out!

July 2021 additions to the ASCL

Thirty codes were added to the ASCL in July:

AlignBandColors: Inter-color-band image alignment tool
ART: A Reconstruction Tool
Balrog: Astronomical image simulation
Chem-I-Calc: Chemical Information Calculator
cosmic_variance: Cosmic variance calculator

FoF-Halo-finder: Halo location and size
GUBAS: General Use Binary Asteroid Simulator
HERMES: High-Energy Radiative MESsengers
K2-CPM: Causal Pixel Model for K2 data
K2mosaic: Mosaic Kepler pixel data

Kd-match: Correspondences of objects between two catalogs through pattern matching
KeplerPORTS: Kepler Planet Occurrence Rate Tools
light-curve: Light curve analysis toolbox
MCPM: Modified CPM method
nimbus: A Bayesian inference framework to constrain kilonova models

PHL: Persistent_Homology_LSS
PlaSim: Planet Simulator
PMN-body: Particle Mesh N-body code
PyCactus: Post-processing tools for Cactus computational toolkit simulation data
PyROA: Modeling quasar light curves

ReionYuga: Epoch of Reionization neutral Hydrogen field generator
RePrimAnd: Recovery of Primitives And EOS framework
ROA: Running Optimal Average
shapelens: Astronomical image analysis and shape estimation framework
shear-stacking: Stacked shear profiles and tests based upon them

Skylens++: Simulation package for optical astronomical observations
Skymapper: Mapping astronomical survey data on the sky
snmachine: Photometric supernova classification
SpArcFiRe: SPiral ARC FInder and REporter
TRINITY: Dark matter halos, galaxies and supermassive black holes empirical model

June 2021 additions to the ASCL

Forty codes were added to the ASCL in June:

ATES: ATmospheric EScape
atmos: Coupled climate–photochemistry model
aztekas: GRHD numerical code
baofit: Fit cosmological data to measure baryon acoustic oscillations
BiFFT: Fast estimation of the bispectrum

BiHalofit: Fitting formula of non-linear matter bispectrum
CalPriorSNIa: Effective calibration prior on the absolute magnitude of Type Ia supernovae
CoMover: Bayesian probability of co-moving stars
crowdsource: Crowded field photometry pipeline
DarkSirensStat: Measuring modified GW propagation and the Hubble parameter

DM_statistics: Statistics of the cosmological dispersion measure (DM)
dopmap: Fast Doppler mapping program
ehtplot: Plotting functions for the Event Horizon Telescope
EMBERS: Experimental Measurement of BEam Responses with Satellites
FRBSTATS: A web-based platform for visualization of fast radio burst properties

GLEMuR: GPU-based Lagrangian mimEtic Magnetic Relaxation
IRAGNSEP: Spectral energy distribution fitting code
Kadath: Spectral solver
Katu: Interaction of particles in plasma simulator
KOBE: Kepler Observes Bern Exoplanets

Lemon: Linear integral Equations’ Monte carlo solver based On the Neumann solution
MakeCloud: Turbulent GMC initial conditions for GIZMO
Maneage: Managing data lineage
Marvin: Data access and visualization for MaNGA
ModeChord: Primordial scalar and tensor power spectra solver

MultiModeCode: Numerical exploration of multifield inflation models
picca: Package for Igm Cosmological-Correlations Analyses
PORTA: POlarized Radiative TrAnsfer
PyDoppler: Wrapper for Doppler tomography software
Pyshellspec: Binary systems with circumstellar matter

QuasarNET: CNN for redshifting and classification of astrophysical spectra
RedPipe: Reduction Pipeline
redvsblue: Quasar and emission line redshift fitting
simple_reg_dem: Differential Emission Measures in the solar corona
simqso: Simulated quasar spectra generator

so_noise_models: Simons Observatory N(ell) noise models
StarcNet: Convolutional neural network for classifying galaxy images into morphological classes
STaRS: Sejong Radiative Transfer through Raman and Rayleigh Scattering with atomic hydrogen
ztf-viewer: SNAD ZTF data releases object viewer
ZWAD: ZTF anomaly detection

ADASS Prize for an Outstanding Contribution to Astronomical Software

Awarded for the first time in 2020, the Astronomical Data Analysis Software and Systems (ADASS) Prize for an Outstanding Contribution to Astronomical Software is awarded every year at the annual conference. Eligible candidates are the developers of astronomical software ranging from those that have stood the test of time to those that are new and cutting edge. Depending on the software and the nomination, the award is given to either a group or an individual. Nominations can be for a single program, a package, or a library.

Nominations for this year’s ADASS Software Prize are due by midnight UTC on June 15th June 18. After that date, the Program Organizing Committee (POC) will review the nominations and descriptions and determine the winner. The winning software author, or a representative of the winning team, will be invited to give a talk at ADASS this year, have their ADASS conference fee waived, and receive a plaque.