[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[python #AHE-194717]: Siphon/THREDDS/NDFD Question
- Subject: [python #AHE-194717]: Siphon/THREDDS/NDFD Question
- Date: Wed, 24 Jun 2020 12:58:42 -0600
Greetings!
1. I wish it was simple, but NCEI's THREDDS server does not use collections for
their GRIB holdings, and in fact they put each product in its own file, so it's
not nearly as easy as it should be. Starting here:
https://www.ncei.noaa.gov/thredds/model/ndfd.html
You can either go for historical or current day's data, and with human-readable
names or WMO header IDs. The problems are:
a. For a script, you need to programmatically generate the URL to the
directory of data you want like:
https://www.ncei.noaa.gov/thredds/catalog/model-ndfd-file-old/201910/20191017/catalog.xml
OR
walk in there with siphon with:
base_cat =
TDSCatalog('https://www.ncei.noaa.gov/thredds/model/ndfd.xml')
sub_cat = base_cat.catalog_refs['NDFD - National Digital Forecast
Database - Historical File Access'].follow()
cat =
sub_cat.catalog_refs['201812'].follow().catalog_refs['20181206'].follow()
which is pretty verbose.
b. The names of the files in either the WMO names or human-readable names are
not really predictable, so you'll have to do some work in code to determine
what the file you want is. For instance, look here:
https://www.ncei.noaa.gov/thredds/catalog/model-ndfd-file-old/201910/20191017/catalog.html
My opinion: the WMO ones might be easiest to deal with, you'll just have
to look at the spreadsheet you linked to figure out what the header you want
is. I think ice accumulation starts with YZ.
Summary: It's going to be painful, but possible, to get it from NCEI.
2. We're saving to disk everything we're getting for the NDFD it appears, so I
guess NOAAPORT just doesn't send out all of those fields. There are more from
CONDUIT that we get:
https://thredds.ucar.edu/thredds/metadata/grib/NCEP/NDFD/NWS/CONUS/CONDUIT/Best?metadata=variableMap
but it's still not everything available. It's possible to request to add data
to the CONDUIT feed, but that's beyond our control.
Ryan
> Ryan,
>
> Thank you for the information. I have spent a few days digging through this
> and seeing if I could get it closer to what I need. I had a couple clarifying
> questions.
>
> 1. Even if it only goes back to 2018 (despite saying 10 years), what do I
> change "ds = cat.latest" to for a particular date/time? (Say Jan 1, 2020 at
> 00 UTC)
>
> 2. I have used the SOAP/XML to get "current" NDFD like the following:
> https://graphical.weather.gov/xml/SOAP_server/ndfdXMLclient.php?whichClient=NDFDgen&lat=35.23611&lon=-97.46488&product=time-series&begin=2020-05-31T00%3A00%3A00&end=2024-05-31T00%3A00%3A00&Unit=e&maxt=maxt&wspd=wspd&wgust=wgust&iceaccum=iceaccum
>
> I only need those four variables ( 'Daily Maximum Temperature' ,'Wind Speed'
> ,'Ice Accumulation' ,'Wind Speed Gust'). It looks like the variables in the
> GRIB file example you sent has less than the full NDFD variables.
>
> https://thredds.ucar.edu/thredds/metadata/grib/NCEP/NDFD/NWS/CONUS/NOAAPORT/Best?metadata=variableMap
> vs
> https://www.weather.gov/media/mdl/ndfd/NDFDelem_fullres_201906.xls
>
> Is there a way to get the full list of variables?
>
> Thank you again for all of your assistance.
Ticket Details
===================
Ticket ID: AHE-194717
Department: Support Python
Priority: Low
Status: Closed
===================
NOTE: All email exchanges with Unidata User Support are recorded in the Unidata
inquiry tracking system and then made publicly available through the web. If
you do not want to have your interactions made available in this way, you must
let us know in each email you send to us.