| DODSGrab {rNOMADS} | R Documentation |
Download model data from the NOMADS server using the GrADS-DODS system.
Description
This function interfaces with the NOMADS server to download weather, ocean, and sea ice data.
The available models can be viewed by calling NOMADSRealTimeList and NOMADSArchiveList.
The data arrives in ascii format, so this function can be used to retrieve data on any operating system.
Usage
DODSGrab(model.url, model.run, variables, time, lon, lat,
levels = NULL, ensembles = NULL, display.url = TRUE,
verbose = FALSE, request.sleep = 1)
Arguments
model.url |
A model URL for a specific date, probably from |
model.run |
A specific model run to get, probably from |
variables |
A list of the data types to get. |
time |
A two component vector denoting which time indices to get. |
lon |
A two component vector denoting which longitude indices to get. |
lat |
A two component vector denoting which latitude indices to get. |
levels |
A two component vector denoting which levels to get, if applicable. |
ensembles |
A two component vector denoting which ensemble runs to get, if applicable. |
display.url |
If |
verbose |
If |
request.sleep |
If multiple requests are to be sent to the server, pause by this many seconds between them. This is courteous and also helps prevent timeouts. |
Value
model.data |
A structure with a series of elements containing data extracted from GrADS-DODS system. |
Author(s)
Daniel C. Bowman danny.c.bowman@gmail.com
References
See Also
GetDODSDates, GetDODSModelRuns, GetDODSModelRunInfo
Examples
#An example for the Global Forecast System 0.5 degree model
#Make a world temperature map for the latest model run
## Not run:
#Figure out which model is most recent
model.urls <- GetDODSDates("gfs_0p50")
latest.model <- tail(model.urls$url, 1)
model.runs <- GetDODSModelRuns(latest.model)
latest.model.run <- tail(model.runs$model.run, 1)
#Download worldwide temperature data at 2 m
variable <- "tmp2m"
time <- c(0, 0) #Analysis run, index starts at 0
lon <- c(0, 719) #All 720 longitude points
lat <- c(0, 360) #All 361 latitude points
model.data <- DODSGrab(latest.model, latest.model.run,
variable, time, lon, lat)
#Make it into a nice array and plot it
model.grid <- ModelGrid(model.data, c(0.5, 0.5))
image(model.grid$z[1,1,,])
## End(Not run)