Version 3.1.0 – 2020/05/06

This is the first new release since 2016 and there have been thousands of lines of code changes under the hood to make this a bump-up to a major release (v3.0.5 → v3.1.0).

The most significant change has been the addition of support for path-dependent travel-time uncertainties when used with an appropriate model. This version of RSTT is being distributed with a new model, pdu2020012Du.geotess, which is prefixed with “pdu” to signify that it’s a “path-dependent uncertainty“-type RSTT model. The old model, rstt201404um, has not yet been removed because it is still used for running tests during the build process.

PDU-type models are automatically detected by RSTT and calls to get travel-time uncertainty are automatically sent to a new algorithm that computes path-dependent travel-time uncertainty. If an old-style model is used, calls fall back to the old 1D travel-time uncertainty computation. If the user wishes to perform the old 1D travel-time uncertainty computation while using a new PDU-type model, new function calls have been provided with a “1D” suffix (e.g., getTravelTimeUncertainty() vs. getTravelTimeUncertainty1D()).

While the number of individual code changes is too large to put in a changelog, a summary of some of the more notable changes are listed below.

  • Support for PDU-type (path-dependent uncertainty) models
  • Inclusion of a new PDU-type model (pdu2020012Du.geotess)
  • Simple usage examples in each language (C++, C, Java, Fortran)
  • A revamped README, viewable in HTML or Markdown
  • Completely rewritten Makefiles and build process, eliminating the need for setting environment variables such as LD_LIBRARY_PATH
  • Completely updated Doxygen and Javadoc documentation
  • Inclusion of an updated version of GeoTess C++ from 2.2.2 to 2.2.3
  • Elimination of all previous compiler warnings
  • Slight change to crustal leg slowness computation for Pg/Lg phases to prevent travel times returning as zero
  • Many bugfixes and improvements