Summary
Geodetic velocity data provide first-order constraints on crustal surface strain rates, which in turn are linked to seismic hazard. Estimating the 2D surface strain tensor everywhere requires knowledge of the surface velocity field everywhere, while geodetic data such as Global Navigation Satellite System (GNSS) only have spatially scattered measurements on the surface of the Earth. To use these data to estimate strain rates, some type of interpolation is required. In this study, we review methodologies for strain rate estimation and compare a suite of methods, including a new implementation based on the geostatistical method of kriging, to compare variation between methods with uncertainty based on one method. We estimate the velocity field and calculate strain rates in southern California using a GNSS velocity field and five different interpolation methods to understand the sources of variability in inferred strain rates. Uncertainty related to data noise and station spacing (aleatoric uncertainty) is minimal where station spacing is dense and maximum far from observations. Differences between methods, related to epistemic uncertainty, are usually highest in areas of high strain rate due to differences in how gradients in the velocity field are handled by different interpolation methods. Parameter choices, unsurprisingly, have a strong influence on strain rate field, and we propose the traditional L-curve approach as one method for quantifying the inherent trade-off between fit to the data and models that are reflective of tectonic strain rates. Doing so, we find total variability between five representative strain rate models to be roughly 40 per cent, a much lower value than roughly 100 per cent that was found in previous studies (Hearn et al., 2010). Using multiple methods to tune parameters and calculate strain rates provides a better understanding of the range of acceptable models for a given velocity field. Finally, we present an open-source Python package (Materna et al., 2021) for calculating strain rates, Strain_2D, which allows for the same data and model grid to be used in multiple strain rate methods, can be extended with other methods from the community, and provides an interface for comparing strain rate models, calculating statistics, and estimating strain rate uncertainty for a given GNSS dataset.