taupTraveltime: Return seismic travel time information using 'The TauP...

View source: R/Utils.R

taupTraveltimeR Documentation

Return seismic travel time information using The TauP Toolkit

Description

The taupTraveltime function returns seismic travel time data computed using The TauP Toolkit (Crotwell, et al., 1999).

software: The TauP Toolkit, version 3.1.0, released 2025-08-15 author: Crotwell, H. Philip crotwell@seis.sc.edu repository-code: https://github.com/crotwell/TauP url: http://www.seis.sc.edu/TauP/ repository: \Sexpr[results=rd]{tools:::Rd_expr_doi("10.5281/zenodo.10794857")}

Usage

taupTraveltime(latitude, longitude, depth = 0, staLatitude, staLongitude)

Arguments

latitude

latitude of seismic event

longitude

longitude of seismic event

depth

depth of seismic event

staLatitude

latitude of seismic station

staLongitude

longitude of seismic station

Details

taupTraveltime is a wrapper for the travel time functionality of The TauP Toolkit. It returns seismic travel times, calculated using a 1-D spherical model, in a dataframe. It is written to replace the deprecated getTraveltime function that retrieved seismic travel time information from EarthScope web services.

software: The TauP Toolkit, version 3.1.0, released 2025-08-15 author: Crotwell, H. Philip crotwell@seis.sc.edu repository-code: https://github.com/crotwell/TauP url: http://www.seis.sc.edu/TauP/ repository: \Sexpr[results=rd]{tools:::Rd_expr_doi("10.5281/zenodo.10794857")}

A modified version of the TauP Toolkit can be used by setting an environmental variable TAUP_JAR_DIR that points to a local directory containing the jar files in the lib directory of TauP.

Value

A dataframe with the following columns:

distance, depth, phaseName, travelTime, rayParam, takeoff, incident
  puristDistance, puristName 

Rows are ordered by travel time.

Author(s)

Gillian Sharer gillian.sharer@earthscope.org

References

Crotwell, H. P., T. J. Owens, J. Ritsema (1999). The TauP Toolkit: Flexible seismic travel-time and ray-path utilities, Seismological Research Letters 70, 154–160.

Examples

## Not run: 

# Two days around the "Nisqually Quake"
iris <- new('IrisClient')
starttime <- as.POSIXct("2001-02-27", tz="GMT")
endtime <- starttime + 3600 * 24 * 2

# Find biggest seismic event over these two days -- it's the "Nisqually"
events <- getEvent(iris, starttime, endtime, minmag=5.0)
bigOneIndex <- which(events$magnitude == max(events$magnitude))
bigOne <- events[bigOneIndex[1],]

# Find US stations that are available within an hour of the event
start <- bigOne$time
end <- start + 3600
availability <- getChannel(iris, "US", "", "", "BHZ",
                           starttime=start, endtime=end,
                           latitude=bigOne$latitude, longitude=bigOne$longitude,
                           minradius=0, maxradius=10)
    
# Get the station the furthest East
minLonIndex <- which(availability$longitude == max(availability$longitude))
snclE <- availability[minLonIndex,]

# Plot the BHZ signal from this station
st <- getDataselect(iris,snclE$network,snclE$station,snclE$location,snclE$channel,
                    start,end)

# Check that there is only a single trace and then plot it
length(st@traces)
tr <- st@traces[[1]]
plot(tr, subsampling=1) # need subsmpling=1 to add vertical lines with abline()

# Find travel times to this station
traveltimes <- taupTraveltime(bigOne$latitude, bigOne$longitude, bigOne$depth,
                             snclE$latitude, snclE$longitude)

# Look at the list                             
traveltimes

# mark the P and S arrival times
pArrival <- start + traveltimes$travelTime[traveltimes$phaseName=="P"]
sArrival <- start + traveltimes$travelTime[traveltimes$phaseName=="S"] 
abline(v=pArrival, col='red')
abline(v=sArrival, col='blue')

## End(Not run)

IRISSeismic documentation built on July 21, 2026, 9:07 a.m.