| getChannel | R Documentation |
The getChannel method obtains channel metadata from the EarthScope (or
other Data center) station web service and returns it in a dataframe.
getChannel(
obj,
network,
station,
location,
channel,
starttime,
endtime,
includerestricted,
latitude,
longitude,
minradius,
maxradius,
...)
obj |
|
network |
character string with the two letter seismic network code |
station |
optional character string with the station code |
location |
optional character string with the location code |
channel |
optional character string with the three letter channel code |
starttime |
optional POSIXct class specifying the starttime (GMT) |
endtime |
optional POSIXct class specifying the endtime (GMT) |
includerestricted |
optional logical identifying whether to report on restricted data |
latitude |
optional latitude used when specifying a location and radius |
longitude |
optional longitude used when specifying a location and radius |
minradius |
optional minimum radius used when specifying a location and radius |
maxradius |
optional maximum radius used when specifying a location and radius |
... |
optional other parameters passed to the station service |
The getChannel method uses the station web service to obtain data for
all channels that meet the criteria defined by the arguments and returns that
data in a dataframe. Each row of the dataframe represents a unique channel-epoch.
Each of the arguments network, station, location or
channel may contain a valid code or a wildcard expression, e.g. "BH?" or
"*". Empty strings are converted to "*". Otherwise the ascii string that is used
for these values is simply inserted into the web service request URL.
For more details see the webservice documentation.
A dataframe with the following columns:
network, station, location, channel, latitude, longitude, elevation, depth, azimuth, dip, instrument, scale, scalefreq, scaleunits, samplerate, starttime, endtime, snclId
Rows are ordered by snclId.
The snclId column, eg. "US.OCWA..BHE", is generated as a convenience. It is not part of the normal return from the station web service.
Note: The snclIds is not a unique identifier. If the time span of
interest crosses an epoch boundary where instrumentation was changed then
multiple records (rows) will share the same snclId.
Jonathan Callahan jonathan@mazamascience.com
The EarthScope station webservice:
https://service.earthscope.org/fdsnws/station/1/
This implementation was inspired by the functionality in the ObsPy get_stations() method.
https://docs.obspy.org/packages/autogen/obspy.clients.fdsn.client.Client.get_stations.html
IrisClient-class, getAvailability,
getUnavailability
# Open a connection to EarthScope webservices
iris <- new("IrisClient")
# Date of Nisqually quake
starttime <- as.POSIXct("2001-02-28",tz="GMT")
endtime <- starttime + 2*24*3600
# Use the getEvent web service to determine what events happened in this time
# period
result <- try(events <- getEvent(iris,starttime,endtime,6.0))
if (inherits(result,"try-error")) {
message(geterrmessage())
} else {
events
# biggest event is Nisqually
eIndex <- which(events$magnitude == max(events$magnitude))
e <- events[eIndex[1],]
}
# Which stations in the US network are within 5 degrees of the quake epicenter?
result <- try(stations <- getStation(iris,"US","*","*","BHZ",starttime,endtime,
lat=e$latitude,long=e$longitude,maxradius=5))
if (inherits(result,"try-error")) {
message(geterrmessage())
} else {
stations
}
# Get some detailed information on any BHZ channels at the "Octopus Mountain"
# station
result <- try(channels <-
getChannel(iris, "US", "OCWA", "*", "BHZ", starttime, endtime))
if (inherits(result,"try-error")) {
message(geterrmessage())
} else {
channels
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.