Get a tidal prediction from a WebTide database. There are two distinct cases.
Case 1: action="map"
. In this case, if
plot
is FALSE
, a list is returned, containing
all the node
s in the selected database, along with all
the latitude
s and longitude
s. This value is
also returned (silently) if plot
is true, but in that case,
a plot is drawn to indicate the node locations. If latitude
and
longitude
are given, then the node nearest that spot is indicated on
the map; otherwise, if node
is given, then the location of that
node is indicated. There is also a special case: if node
is negative
and interactive()
is TRUE
,
then locator
is called, and the node nearest the spot
where the user clicks the mouse is indicated in the plot and in the
return value.
Case 2:
action="predict"
. If plot
is FALSE
,
then a list is returned, indicating time
, predicted
elevation
, velocity components u
and v
,
node
number, the name of the basedir
, and
the region
. If plot
is TRUE
, this list is returned
silently, and time-series plots are drawn for elevation, u, and v.
Naturally, webtide
will not work unless WebTide has been installed on
the computer.
webtide(action = c("map", "predict"), longitude, latitude, node, time,
basedir = getOption("webtide"), region = "nwatl", plot = TRUE,
tformat, debug = getOption("oceDebug"), ...)
An indication of the action, either action="map"
to
draw a map or action="predict"
to get a prediction; see
‘Details’.
optional location at which prediction is required (ignored if
node
is given).
optional integer relating to a node in the database. If node
is given, then neither latitude
nor longitude
may be given.
If node
is positive, then specifies indicates the node. If it is negative,
locator
is called so that the user can click (once) on the map, after
which the node is displayed on the map.
a vector of times at which prediction is to be made. If not supplied, this will be the week starting at the present time, incrementing by 15 minutes.
directory containing the WebTide
application.
database region, given as a directory name in the WebTide
directory. For example, h3o
is for Halifax Harbour, nwatl
is
for the northwest Atlantic, and sshelf
is for the Scotian Shelf and
Gulf of Maine.
boolean indicating whether to plot.
optional argument passed to oce.plot.ts
, for
plot types that call that function. (See strptime
for the
format used.)
an integer specifying whether debugging information is
to be printed during the processing. This is a general parameter that
is used by many oce
functions. Generally, setting debug=0
turns off the printing, while higher values suggest that more information
be printed. If one function calls another, it usually reduces the value of
debug
first, so that a user can often obtain deeper debugging
by specifying higher debug
values.
optional arguments passed to plotting functions. A common
example is to set xlim
and ylim
, to focus a map region.
If action="map"
the return value is a
list containing the index of the nearest node, along with the
latitude
and longitude
of that node. If
plot
is FALSE
, this value is returned invisibly.
If action="predict"
, the return value is a list containing a vector
of times (time
), as well as vectors of the predicted elevation
in metres and the predicted horizontal components of velocity, u
and
v
, along with the node
number, and the basedir
and
region
as supplied to this function.
If plot
is FALSE
, this value is returned invisibly.
a list containing node
, longitude
and latitude
. If
no node was provided to webtide
then this list will cover the whole
set of nodes in the WebTide model; otherwise, it will be just the node that
was requested.
WebTide is not an open-source application, so the present function was designed based on little more than guesses about the WebTide file structure. Users should be on the lookout for odd results.
# NOT RUN {
## needs WebTide at the system level
library(oce)
## 1. prediction at Halifax NS
longitude <- -63.57
latitude <- 44.65
prediction <- webtide("predict", longitude=longitude, latitude=latitude)
mtext(sprintf("prediction at %fN %fE", latitude, longitude), line=0.75, side=3)
## 2. map
webtide(lon=-63.57,lat=44.65,xlim=c(-64,-63),ylim=c(43.0,46))
# }
Run the code above in your browser using DataLab