code
The below code are snippets of current working projects.
C++
- uLinalg: a library to handle 2D array operations, including broadcasting, LU decompositions, and Cholesky decompositions.
- punter: an implementation of the Shunting-Yard to parse mathematical expressions from infix to postfix notation.
R
Python
- statFEM code to accompany these papers (FEM code is implemented with FEniCS):
- The 1D case (including the internal wave experimental data) is housed at statkdv-paper. This code computes the posterior (filtering) distribution using extended and ensemble Kalman filters.
- The 2D case is located here. This also computes the posterior filtering distribution using a low-rank extended Kalman filter algorithm.
- ula-statfem: code to explore Langevin dynamics samplers with statFEM. Published in SIAM JUQ. Includes sfmcmc package which implements a bunch of different MCMC samplers, including ULA (see this classic paper), MALA, and preconditioned Crank-Nicolson.
- statfenics: a set of tools to help when doing statistics with FEniCS. Includes functions to build Gaussian process inference on top of FEniCS, and utilities to aid in interpolating finite element solutions.