All software linked on this page was developed primarily by members of the group and we offer it to anyone with no expectation of compensation nor offer of technical support. Unless otherwise stated, all software below are licensed under the GNU General Public license. The spirit of the GNU license is as follows:

"This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details."

If you find a bug or you simply like any of these codes, please let us know. 


  • fourDvel: Routine for inferring time-dependent, 3d velocity fields from geolocated displacement data following Minchew et al. 2017. (Download)
  • PySAR: A perpetually incomplete, general-purpose toolbox for common post-processing tasks involving synthetic aperture radar (SAR). Users can find interferometric SAR (InSAR) and polarimetric SAR (PolSAR) tools along with tools for 1D data sets, such as GPS and seismic data. Contents include command-line Python scripts and Python, C/C++, and Fortran functions. (Download)
  • Recon3D: 3D velocity field reconstruction using Laplacian to form the prior model covariance matrix following Minchew et al. 2015. (Download)
  • VectorDisp: A simple routine to infer 3d (vector) displacements from unwrapped, geolocated InSAR data and/or 2D offset fields. (Download)
  • PolarDecomp: A collection of decomposition routines for polarimetric synthetic aperture radar (PolSAR) applications written in Fortran. Available decomposition methods include Pauli, eigenvalue/eigenvector, Cloude-Pottier H/A/α, and Shannon. (Download)
  • Oil/Water Mixing Index: Estimate the extent of mixing of oil and seawater using co-polarized (HH and VV) synthetic aperture radar data by applying the method of Minchew (2012). This code employs a hybrid parallelization scheme, in that it uses shared and distributed memory parallelization, in order to take advantage of nodal clusters, where a number of CPUs with shared memory are distributed across several mostly independent compute nodes. This can significantly reduce elapsed processing time and was written as a prototype for a real-time spill response tool. (It's worth noting that the computational load is almost entirely due to the (naive) filtering routine and that a more sophisticated filtering approach would eliminate the need for complex parallelization. In my defense, I wrote this code as part of a course on parallelization.) Requires Python >= 2.6, a C++ compiler (only tested on GNU compiler), and an MPI installation. (Download)