
“Computers aren’t the thing. They’re the thing that gets us to the thing.”
– Joe MacMillan
I am a computational cosmologist: I develop and use software and computational codes to study the universe. Most of my research projects have involved some level of coding. This has led me to become a co-developer of three open-source cosmological codes, described below. You can find more of my coding projects on GitHub.
PTPlot, co-developer since March 2023PTPlot is a web-based tool for exploring the gravitational wave power spectrum from first-order phase transitions, and evaluating the likelihood of detecting a signal with the LISA mission. Written in Python, web interface created with django. In addition to general bugfixes and maintenance, my main contributions include:
- Implementation of more accurate modelling for phase transitions (ongoing)
- Clean-up and documentation of source code (code release 1.1.0)
MontePython, co-developer since August 2017MontePython is an open-source statistical code for parameter inference via Monte Carlo methods. This code provides an interface between cosmological models and observational data. Code written in Python. In addition to general bugfixes and maintenance, my main contributions include:
- Developed emulator-based likelihoods for Lyman-α missions (code releases 3.3 and 3.6)
- Updated the code from
Python2toPython3(code releases 3.3 – 3.5) - Implemented likelihoods for several major cosmological experiments (code releases 3.2 – 3.5)
- Added statistical forecasts for future cosmological missions (code releases 3.1 and 3.5)
- Implemented support for alternative statistical tool:
PolyChordsampler (code release 3.1)
CLASS, co-developer since June 2015CLASS is an open-source Boltzmann code that simulates the evolution of the universe and computes the relevant cosmological observables. Written in C with a Python wrapper. In addition to general bugfixes and maintenance, my main contributions include:
- Implementation of new cosmological model: multi-interacting dark matter (code release 3.2)
- Developed a new module to calculate spectral distortions and various energy injection models (code release 3.0)
- Updated the differential equation solver to be more efficient and optimised (code release 3.0)
- Implementation of new cosmological model: interacting dark matter and dark radiation (code release 2.9)
- Addition of automatic documentation, generated with
doxygen(code release 2.5)