getTraveltime {IRISSeismic} | R Documentation |
Retrieve seismic traveltime information from IRIS DMC
Description
The getTraveltime
method obtains seismic traveltime data from
the IRIS DMC traveltime
web service and returns it in a dataframe.
Usage
getTraveltime(obj, latitude, longitude, depth, staLatitude, staLongitude)
Arguments
obj |
an |
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
The traveltime
web service calculates travel-times for seismic phases using a 1-D spherical earth model.
Value
A dataframe with the following columns:
distance, depth, phaseName, travelTime, rayParam, takeoff, incident puristDistance, puristName
Rows are ordered by travelTime
.
Author(s)
Jonathan Callahan jonathan@mazamascience.com
References
The IRIS DMC traveltime web service:
https://service.iris.edu/irisws/traveltime/1/
See Also
Examples
## Not run:
# Open a connection to IRIS DMC webservices
iris <- new("IrisClient")
# Two days around the "Nisqually Quake"
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 <- getAvailability(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 <- getTraveltime(iris, 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)
[Package IRISSeismic version 1.6.6 Index]