@ NASA Goddard
OPENSOFTWAREFORASTRONOMICALDATA ANALYSISby Dan Foreman-Mackey
View Slide
open software for astrophysics0
credit: Adrian Price-Whelan/ /data: SAO/NASA ADS
7
many fundamental software packageshave a shockingly small number ofmaintainers.
7credit: Adrian Price-Whelan
* astronomical software can bevery high impact* we should think about careertrajectories & mechanisms forsupporting this work
case study: gaussian processes1
°0.6°0.30.00.30.6raw [ppt]0 5 10 15 20 25time [days]°0.30°0.150.00de-trended [ppt]N = 1000reference: DFM+ (2017)
reference: Aigrain & DFM (2022)
reference: Aigrain & DFM (2022)ignoringcorrelatednoiseaccountingforcorrelatednoise
a Gaussian Process is adrop-in replacement forchi-squared
more details:Aigrain & Foreman-Mackey (2023)arXiv:2209.08940
7[1] model building[2] computational cost
reference: Luger, DFM, Hedges (2021)
[2] computational cost
7[1] bigger/better computers[2] exploit matrix structure[3] approximate linear algebra[4] etc.
132
reference: Gordon, Agol, DFM (2020) / tinygp.readthedocs.io
* a Gaussian Process is a drop-inreplacement for chi squared* model building & computationalcost are (solvable!) challenges* you should check out tinygp!
case study: probabilistic inference2
have:physics= >data
want:data= >physics
7[1] physical models[2] legacy code
number of parameterspatience requireda few tenish not outrageously manyreference: DFM (priv. comm.)
number of parameterspatience requiredemceea few tenish not outrageously manyreference: DFM (priv. comm.)
number of parameterspatience requiredemceea few tenish not outrageously manyhow things should bereference: DFM (priv. comm.)
3.0 3.5 4.0 4.5 5.0Wavelength [micron]2.052.102.152.202.252.30Transit Depth [%]Alderson et al. 2023Joint Fit (N = 50)reference: Soichiro Hattori, Ruth Angus, DFM,. . .(in prep)WASP-39b / NIRSpec
reference: Soichiro Hattori, Ruth Angus, DFM,. . .(in prep)showing 23 of the404 parameters(8 per channel + 4 shared)
how?
d(physics= >data) / dphysics
automatic differentiationaka “backpropagation”
7[1] domain-specific libraries[2] emulation
* gradient-based inference usingautodiff can improve efficiency* there are practical challengeswith these methods in astro* of interest: domain-specificlibraries & emulation
aside: JAX3
import numpy as npdef linear_least_squares(x, y): A = np.vander(x, 2)return np.linalg.lstsq(A, y)[0]
import jax.numpy as jnpdef linear_least_squares(x, y): A = jnp.vander(x, 2)return jnp.linalg.lstsq(A, y)[0]
open research practices4
open software is foundational toastrophysics researchthere are opportunities at theinterface of astro & applied fieldsthere are ways you can participate& benefit right away
7I want to chat about…[1] your data analysis problems[2] building astronomical software[3] writing documentation & tutorials
get in touch!dfm.iogithub.com/dfm