Software

I believe developing computationally optimized statistical software that is open source, and easy to use and follow without bugs is vital for statistical reproducibility, research dissemination, and model development. All of the software I have developed in my research is open source, and is available on my GitHub. If you find any errors in my code, I would be grateful if you could contact me and let me know.

Extended LatticeKrig (ELK)

LatticeKrig is a popular spatial model that can account for multiple scales of spatial correlation in a modeled dataset. In order to apply LatticeKrig to non-Gaussian observations in a Bayesian context, Professors Gier-Arne Fuglstad, Andrea Riebler, Jon Wakefield, and I developed Extended LatticeKrig (ELK), which takes advantage of the INLA R package to avoid the computational expense of Markov Chain Monte Carlo (MCMC) sampling. Source code for ELK is available, with an example illustrating its application to a precipitation dataset on GitHub. The model is discussed further in a paper published in Computational Statistics and Data Analysis.


Modeling Cascadia subduction zone earthquakes

The Cascadia subduction zone (CSZ) lies off of the west coast of the United States, and is capable of magnitude 9 earthquakes. There have been many efforts to collect paleoseismic evidence of how much the coast sunk with each past earthquake going back thousands of years, and this evidence can help us to determine how large past events were. R code is available on GitHub for modeling past earthquake events using template model builder (TMB) and R.


The `fields' spatial statistics package in R

`fields' is an excellent package for classical spatial statistical modeling using Kriging, and was originally developed by Drs. Doug Nychka, Reinhard Furrer, and Steven Sain. During my time working at the National Center for Atmospheric Research (NCAR) I worked on several projects including helping to make its optimization and likelihood calculation methods more computationally efficient and easy to use, and I also helped implement methods for covariogram, variogram, and correlogram computation and plotting. Much of the code in fields is written in C and Fortran in order to optimize some fundamental computational steps in the likelihood evaluation, such as its distance and covariance matrix calculations. The most up-to-date version of the package is available at NCAR's GitHub, and the package itself is on CRAN.


Classical Kriging with GPUs in `fieldsMAGMA'

Although improvements in algorithms and modeling methods are especially important for the computational performance of statistical models, advances in parallel and GPU computing can also play a significant role in statistical computation. While working at the National Center for Atmospheric Research (NCAR), I helped write a version of the fields package linking to the MAGMA computational library called `fieldsMAGMA' in order to use GPUs to speed up the likelihood calculations. Code for fieldsMAGMA is available on Bitbucket, and information about the package and its computational performance is available in two technical reports (1 2).