Projects

Open-source tools, research software, and applications spanning scientific computing, data visualization, computer graphics, and agentic AI

Loom
Try it cargo install loom-tui

Loom

TUI control center for managing git worktrees and agentic workflows, supporting Claude Code, GitHub, and Linear

Rust
MiePy
Try it uvx -p 3.13 miepy

MiePy

Solve Maxwell's equations for a cluster of particles using the generalized multiparticle Mie theory (GMMT)

Python C++
Stoked
Try it uvx stoked

Stoked

Solve the Stokesian dynamics equations for N interacting particles, a generalization of Brownian dynamics that includes hydrodynamic coupling interactions

Python
FPlanck
Try it uvx fplanck

FPlanck

Numerically solve the Fokker-Planck partial differential equation in N dimensions using a matrix numerical method

Python
GranSim

GranSim

Simulation of granular material dynamics in 2D and 3D using a direct element method

C++ Python
NumPipe

NumPipe

Python software package that makes long-running tasks manageable and faster by executing code in embarrassingly parallel and regularly caching the output to HDF5 files

Python
QBox

QBox

Electodynamic simulations in two dimensions using the Finite-Difference Time-Domain (FDTD) algorithm

C++
VDynamics

VDynamics

Realtime visualization of 2D and 3D dynamics of a large number of objects using OpenGL and pybind11 C++ bindings

Python C++ OpenGL

Additional Projects

  • GitScan Command-line utility to scan local and remote git repositories for history that is divergent from the remote branch
  • h5cpp C++ wrapper for the HDF5 C library
  • h5tree HDF5 tree command-line utility, similar to the Unix tree command
  • LatBolt Solve the Navier-Stokes fluid dynamics equations using a Lattice Boltzmann method
  • meep_ext Extensions for Python Meep, MIT's Finite-Difference Time-Domain electromagnetic simulation software
  • my_pytools Helper functions to solve common tasks in numpy, matplotlib, h5py, and vpython
  • pybind_examples Examples of pybind11-based projects compiled with CMake, combining C++, CUDA, and Python code
  • Qpost Python library and command-line utility for QBox FDTD software
  • MPI walkers Random walkers on a 2D grid using MPI for parallelization