Software
Featured Projects
eOn
Long timescale dynamics for rare event simulations. Lead maintainer. Rewrote the architecture from the ground up: RPC-based potential interface (rgpot), meson build system, struct-based configuration, CLI with runtime feature detection, ASV performance benchmarking. Integrated GP saddle searches, Hessian-enhanced CI-NEB, and metatomic ML potentials.
Site | GitHub | GP saddle paper
- Supports research: Transition State Methods, GP Acceleration, ML Atomistic.
- Writing: Reconciling eOn for Academia and Open Source; Windows Compatibility and Scientific Computing.
metatensor
Shared data format for atomistic ML. Contributor at EPFL labCOSMO. Implemented DLPack support (zero-copy tensor interchange between PyTorch, NumPy, and Rust), device-aware execution, and the Rust core.
Docs | GitHub | Paper (JCP)
f2py (NumPy)
Fortran-to-Python interface generator. Maintainer with commit rights. GSoC mentor. Derived type support, CLI modernization, meson build.
- Supports research: Scientific Software Interoperability.
- Writing: Fortran Frontiers: Bridging Legacy to Modernity series; Handling legacy Fortran code.
LFortran
Interactive LLVM-based Fortran compiler. GSoC 2021 student developer (compile-time intrinsic functions), then GSoC 2022-2023 mentor. Secured NumFOCUS Small Development Grants and a Google Season of Docs grant for SciPy compilation and documentation work.
- Supports research: Scientific Software Interoperability.
- Writing: GSoC21: LFortran series (compile-time intrinsics, ASR, weekly notes).
d-SEAMS
C++/Lua engine for structural analysis of molecular trajectories. Creator. Ice polymorph classification via Voronoi tessellation and Steinhardt order parameters. NumFOCUS-funded.
- Supports research: Molecular Simulation.
wailord
ORCA quantum chemistry parsers and workflow automation. Creator.
Site | GitHub | PyPI | SciPyCon paper
- Supports research: Scientific Software Interoperability, Reproducible HPC.
HiGHS / SciPy optimization
Added the meson build system to HiGHS, the
Beale-Orchard-Hays Prize-winning LP/MIP solver. Built the highspy
pybind11 bindings and integrated them into SciPy, replacing the legacy
Cython wrappers. Every call to scipy.optimize.linprog and
scipy.optimize.milp now uses this integration. Also initiated
PRIMA (derivative-free constrained optimization) integration
into SciPy using the same subproject approach.
SciPy PR (highspy) | SciPy PR (re-integration) | HiGHS meson PR
OpenBLAS (meson port)
Ported OpenBLAS to the meson build system and added it to the WrapDB, making it available as a subproject for any meson-based project. Added LAPACK build support and maintained the wrap through upstream releases. OpenBLAS provides the default BLAS/LAPACK backend for NumPy and SciPy.
asv (Airspeed Velocity)
Performance benchmarking for Python projects. Co-maintainer. Refactored the
runner architecture (asv_runner), added py-rattler solver support,
managed multiple releases, and built asv-perch (GitHub Action for
benchmark PR comments).
flowy
Probabilistic lava emplacement prediction. Contributor (numerical methods). Developed in response to the 2024 Grindavik eruptions.
- Supports research: Molecular Simulation (lava emplacement subsection).
featom
High-order finite element method for atomic structure calculations. Radial Schrodinger and Dirac equation solver for isolated atoms. Collaboration with Ondrej Certik (LFortran).
- Supports research: Scientific Software Interoperability; Chapter 3 of the thesis on electronic structure.
fastMatMR
Fastest C++ library for Matrix Market I/O, with R bindings. Creator. rOpenSci peer-reviewed.
- Supports research: Reproducible HPC data interchange.
Ecosystem Roles
- NumPy / SciPy: f2py maintainer (commit rights, ongoing), HiGHS LP/MIP solver integration into SciPy (meson build,
highspybindings,linprog~/~milp), SciPy proceedings committee (2022-2023), NumPy sprint mentor (PyData Global, Grace Hopper, PyCon India) - conda-forge: Package maintainer (multiple feedstocks)
- Carpentries: Certified instructor, R Novice Inflammation lesson maintainer, HPC-Carpentry steering council (2022-2023), Instructor Development Committee special projects chair (2020-2021)
- JOSS: Editor (2024-present), reviewer since 2018
- NixOS: Contributor, Summer of Nix mentor (2021)
- spack: Contributor
- Nordic-RSE: Board member, founding secretary (2021-2022)
- IEEE: P3173 Vice Chair (reproducible neuroimaging), P2881 participant (neural network schema)
- SymEngine: Google Season of Docs technical writer (2020-2021)
- GPAW: Contributor (self-interaction correction, test infrastructure)
- TeX Users Group: Organizing committee member (2020-2022)
- APS: Session chair (April 2024, March 2023); FGSA nominating committee
- ICPP 2023: Artifact Description and Evaluation review board
Other Tools
- readCon: C++ parser for
.conatomic configuration files - bless: CLI tool for logging development runs (Rust). SciCompRS 2024 talk | GitHub
- chemparseplot: Chemical plotters and parsers (Python) | GitHub
- rgpycrumbs: Dispatcher-based analytical and visualization suite for chemical physics | GitHub
- GaussJacobiQuad: Gauss-Jacobi quadrature routines (Fortran) | GitHub
- anneal: Simulated annealing and quenching (Python)
- nimvault: Encrypted dotfile management (Nim) | GitHub
- doxyYoda: Modern Doxygen theme (CSS/SCSS) | GitHub
- hzArchiso: Custom ArchLinux installation media
- asv-perch: GitHub Action for ASV benchmark PR comments | GitHub
- probsamplers: MCMC probability samplers
- f2py_derived_nep: Derived type design examples for f2py
- nebmmf_repro: Reproduction materials for NEB-MMF paper
- lammps-mode: Emacs major mode for LAMMPS input files
- grimoire.science: Metalsmith-based educational site