# Presentation: 261646

##  The NOAA Operational Model Archive and Distribution System		      NOMADS

- 	     	     Glenn K. Rutledge
-        	            NOMADS  Program Manager
-             National Oceanic and Atmospheric Administration
- 	            National Climatic Data Center
- 	             13th Federation Assembly Meeting
-                               Earth Systems Information Partners
- 		 TECHNICAL WORKSHOP
-     	                 Asheville, NC August 18, 2004

## Overview

-   Until now there existed no long-term archive for Climate and Weather models.

-  Retrospective analysis and model inter-comparison are necessary to verify and improve short term NWP models, seasonal forecasts, climate simulations, assessment and detection efforts.

-   University and Institutional research goes largely untapped by NOAA scientists. Effort is wasted on data receipt and format issues with no infrastructure to collaborate.

*Overview*

## Overview

-  NCDC, NCEP and GFDL initiated the NOAA Operational Model Archive and Distribution System.
-  NOMADS is a distributed data services pilot for format independent access to climate and weather models and data.

*Overview*

## NOMADS Goals

- communities (ocean, weather, and climate)
- to study multiple earth systems using
- collections of distributed data,

-   promote product development,

-   expand institutional participation via distributed technologies.

-   The goals of NOMADS are to:

-   provide access to models,

*NOMADS Goals*

## The NOMADS Philosophy

- weather and climate information:  web browsers to advanced scientific data visualization packages.  NOMADS is a flexible approach to data access- promoting standards, based upon what users use most.
-   As users require new data types, under NOMADS, they can be added or replaced.  Over the years, NOAA has developed several different data conventions and data access protocols.  NOMADS allows the use of all these most widely used formats.
-   This will allow the users to make better, informed decisions about
- how nature will impact their future, either in their life, or business decisions.

*The NOMADS Philosophy*

## NOMADS participants serve their data sets through a client-server relationship, that is, the data sets are internet ready and the display is done by the client. 

GDS combines both GrADS, a freeware client (from COLA) and DODS (OPeN-DAP) server to compress and exchange data in many formats with http.

This means that data appears to the user or client application as a local file!
 			Like a network file system over the web!

DODS requests are made by many freeware and commercial high level language clients. 

Simple http queries to the DODS servers can create value added products.  

- GDS combines both GrADS, a freeware client (from COLA) and DODS (OPeN-DAP) server to compress and exchange data in many formats with http.
- This means that data appears to the user or client application as a _local file_!
* **	**	**	**Like a network file system over the web!*
- DODS requests are made by many freeware and commercial high level language clients.
- Simple http queries to the DODS servers can create value added products.

*The NOMADS Philosophy 2*

## NOMADS is an agreement between agencies who participate to have common ...

- Data and observation distribution software, format independent and description  methods (metadata).
- Documentation and organizational framework.
- Forum to plan and organize (science drivers).
- Funding avenue to direct $ for intra-Agency partnerships
- ... for university, federal agencies, and organizations, a mechanism to obtain support for the dissemination of their data sets.

*A Distributed Framework*

## So What?  
		  	“But I just want the Data”
  The idea of pulling information, not bytes or data, is new and hard to convey
NOMADS is a pull technology.  Users can become servers of data!    
Why transport millions of files if only a subset is needed? 
Will networks ever keep up with growing data sets? 
Data management at the grass roots level with science driven requirements.
Many efforts in distributed access.  How best to coordinate (metadata) efforts? 
Vision, planning, and cooperation needed w/ Agency attribution!
A dynamic system, not over engineered and built upon existing users needs but extensible for future requirements.  

**	****	****  ****	*****“******But I just want the ***_***Data***_***”***
***  ***The idea of pulling _information_, not bytes or data, is new and hard to convey
- NOMADS is a pull technology.  Users can become servers of data!
- Why transport millions of files if only a subset is needed?
- Will networks ever keep up with growing data sets?
- Data management at the grass roots level with science driven requirements.
- Many efforts in distributed access.  How best to coordinate (metadata) efforts?
- Vision, planning, and cooperation needed w/ Agency attribution!
- A dynamic system, not over engineered and built upon existing users needs but extensible for future requirements.**  **

*Distributed Framework 2*

## Scientific Data Networking?

-   	- What data of interest exist?
-   	- Are they going to be useful to me?
-   	- How can I obtain them in a usable form?
-    Time and effort are wasted on data access and format
-      issues.
-   As a result atmosphere/ocean/climate data are under-
-     utilized.  Model inter-comparison nearly impossible.

*Scientific Data Networking?*

## Scientific Data Networking 2

- Access to remote data in the users normal application
- IDL / IDV / Matlab / Ferret
- GrADS (GRIB/BUFR w/ GDS)
- Netscape / Excel / http (wget)
- CDAT (PCMDI)
**Any netCDF application**      (i.e., AWIPS)
**Don’t need to know the format in which the data are stored.**

**Data publishing (server)**
**Can serve data in various formats**
- netCDF / GRIB / BUFR / GRIB2
- HDF (3-5) / EOS
- SQL / FreeForm
- JGOFS / NcML
- DSP
- ascii, others...
**Spatial and temporal sub-setting and host side computations on the fly.**

- NOMADS simplifies scientific data networking, allowing simple access to high volume remote data, unifying access to Climate and Weather models:

*Scientific Data Networking 2*

## Collaborating Programs

*Collaborating Programs*

- CAP     Climate Action Partnership  	       	DOC DOE EPA State Dept
- CDP     Community Data Portal 			NCAR
- CEOS   Committee on EO Satellites 		NOAA Representative
- CEOP   Coordinated Earth Obs Period    	NOAA Representative
- EPA     Air Quality Models 			(in progress)
- ESP      Earth Science Portal	 		Founding Member
- NASA GCMD    				Science Advisory Board
- NERC DataGrid 				Advisory Committee
- NSF Cyberinfrastructure 			Member
- NSF LEAD & Geo-Science Tech Forum	 (GTF)  Data / Planning Committee
- NVODS / US GODAE / GOOS			Data Provider
- Unidata THREDDS,  NSDL, DLESSE		Data Provider
- WCRP World Climate Research Program  	JSC/CLIVAR Briefings

## The Partnerships

- 	CDC
- 	COLA   co-PI
- 	FSL
- 	GFDL   co-PI
- 	LLNL
- 	NCAR
- 	NCDC   PI
- 	NCEP    co-PI
- 	PMEL    co-PI
- 	Unidata

**	**BADC (UK)
- 	CEOP
- 	CEOS
- 	LEAD & GTF (NSF)
- 	NASA GCMD
- 	NERC DataGrid (NDG)
- 	NSSL w/UW/SSEC
- 	THREDDS
- 	United Nations FAO

*The Partnerships*

## NOMADS is a founding member of the Global Organization for Earth System Science Portals (GO-ESSP).

GO-ESSP is a collaboration designed to build the infrastructure needed to create web portals to provide access to observed and simulated data within the climate and weather communities. 

The infrastructure created within GO-ESSP will provide a flexible framework that will allow interoperability between the front-end and back-end software components. ESP is an international collaboration involving software developers from both Europe and the United States.               See http://esportal.gfdl.noaa.gov/

- GO-ESSP is a collaboration designed to build the infrastructure needed to create web portals to provide access to observed and simulated data within the climate and weather communities.
- The infrastructure created within GO-ESSP will provide a flexible framework that will allow interoperability between the front-end and back-end software components. ESP is an international collaboration involving software developers from both Europe and the United States.               See http://esportal.gfdl.noaa.gov/

*The Bigger Picture*

## Distributed Modeling

-   The Weather Research and Forecast (WRF) model participants (via the ESMF) addresses modular coding design, however an overarching Agency program element for models or for distributed modular computing for AOGCM’s are not being directly addressed.
-   Distributed modeling can be applied to other data forms as well as local and remote data mining operations.  Some products can be pre-generated by mining tools, while allowing authorized scientists access to petabytes of archive for exploration.

- S.Hankin/Rutledge

## NOMADS Uses

- Collaboration between Global Climate Model (GCM) and NWP
-     researchers using large data volumes of data.
- Assess the affect of inadequate spatial and temporal sampling.
- Models can be used to guide the spatial and temporal sampling frequency for observing network design and operation to resolve distributions for specific variables.
- Accurate estimates of future climate variability and trends.
- Long-term protection of climate simulations and NWP analysis.

*NOMADS Uses*

## NOMADS Uses 2

- Departure of observations from NWP and a fixed reference climatological background can help identify time-dependent changes in the observations.  Dynamics in climatological analysis!
- A  NWP re-start and re-run capability.

*NOMADS Uses 2*

## Model input data assimilation fields for Regional model    initialization (e.g., WRF, MM5,) and Regional Climate Models.

Analysis of historical NWP for operational forecaster training.

Third-world internet access to NWP for forecast operations.

Subsets of high volume NWP and GCM avbl over the Internet.

- Analysis of historical NWP for operational forecaster training.
- Third-world internet access to NWP for forecast operations.
- Subsets of high volume NWP and GCM avbl over the Internet.

*NOMADS Uses 3*

## NOMADS Users

*NOMADS ****Users***

-   Data Philosophy and Retention
-   Data are free.
-   NWP forecast data are retained for five years.
-   Analysis, Reanalysis, observations, and GDAS model input are retained for long term stewardship.
-   Data Users
-  Resolution of IP addresses indicate a broad range, and
-    consistent use of NOMADS available data:
-   U.S. Agencies, Academic Institutions: K-12 to Research
-   International governments, (Italy, Japan, countries within
-    South America and Africa.  Many others).
-   Private Sector and Non-Government Organizations NGO’s
-   World Bank, United Nations (FAO), others.

## NOMADS Archive and Users 2

*NOMADS Archive and ****Users**** 2*

- Existing and Projected Volume

- * 5-YR retention
-   of fcsts.  Long
-   term for anal.

- Jun

- May

- Apr

- 2004

- Jul

## NCDC System Architecture

- NOAAPort

- Unidata IDD

- NCEP ftp

** ****Data & Directory **
**   ****structures “merged”**
** ****Daily Data Ingest **
**   ****inter-comparison **
** ****QC and R/T Monitoring**
** ****Index File generation**
** ****Control and OPeNDAP **
**   ****metadata generation  **
** ****CVS Backup (code)**
** ****NCDC Archive Interface**

** ****Earth System **
**Grid & **
**CEOS-Grid**

**Obs, Eta, **
**GFS, RUC**

**Hi-Res**
**GFS, Eta, **
**NARR and**
**GDAS**

_**Data Ingest**_

**Dual**
**Redundant**
**Ingest**

_**Data Management**_

_**Data Access**_

**NCDC**
**Archive**

**NOMADS**
**Web/DODS**

*NCDC System Architecture*

- GigaPOP

## Dynamic Ingest Monitoring

*Dynamic Ingest Monitoring*

- Dual Site Ingest and Dynamic error reporting for a serially complete archive.  QC architecture discovered NOAAPort labeling errors.

## The NCDC NOMADS System

*The NCDC NOMADS System*

_**Multiple paths to format independent data access:**_

## GrADS Data Server- GDS

- GRIB, HDF

- NetCDF

- GrADS binary

- etc..

**Datasets in any format supported by GrADS**

- Result cache

**For GRIB / 2 and BUFR users, multi-dimensional data (space/time), and data subsets are extracted on the fly.**

- GrADS batch mode

- interface code

**DODS*** server libraries

- Server

**performs analysis operations**

**manages sessions, translates dataset names**

- Java servlet

**supports extended request types for analysis, upload**

- Encapsulated Analysis Requests

- Station data

- BUFR

- Internet

*GrADS Data Server- GDS*

- Source: B. Doty (COLA) & G. Rutledge

- ** using NetCDF interface

## Data Transport

**What’s Needed?**
**Subsetting**
**Format-independence**
**Aggregation (GDS, Unidata)**
**Compression**
**Security**
**CF – model dataset standards**
**structures and semantics**

**Notes:**
OPeNDAP (& OPeNDAPg – Grid-enabled version)
Subsetting – required for network efficiency
Format-independence – not netCDF, alone
Aggregation – model histories viewed as single datasets (GDS – aggregate forecasts in various ways)
Compression – on-the fly for netwaork transmission.  HDF5 (compressed chunks)
CF
Standards for structures and semantics

## Framework

-   OPeNDAP is a binary-level protocol designed for the transport
-     of scientific data subsets over the Internet.   Provides server
-     side data manipulation on-the-fly (e.g., GrADS-DODS).
-   Data formats: GRIB, GRIB2, BUFR, HDF, NetCDF, ascii...
-    Conventions: COARDS, CF, FGDC, DIF....libraries built as
-    necessary.
-   APIs: JAVA-OPeNDAP, C++-OPeNDAP, NetCDF, GRIB,
-    BUFR, THREDDS, Python.

*Framework*

## Framework 2

*Utilize Binary data and metadata through OPeNDAP ...*

*Framework 2*

## Interoperability and OPeNDAP

-  Some data sets are well described, others are not.

**Interoperability and OPeNDAP**

**OPeNDAP does not *****mandate***** semantic interoperability although it does allow for it.**

## Interoperability and OPeNDAP

**Syntactic**** **interoperability – Consistent format representation across data sets.

**Semantic **interoperability – Consistent semantic interpretations of the data.

**Interoperability and OPeNDAP**

**OPeNDAP mandates syntactic interoperability via a strict syntactic description of all data available via the system.**

## Syntactic metadata – Information about the data types and structures at the computer level - the syntax of the data; e.g., variable T is a 20x40 element floating point array

**Syntactic **metadata – Information about the data types and structures at the computer level - the syntax of the data; **e.g., variable T is a 20x40 element floating point array**

**Semantic **metadata – Information about the contents of the data set. **e.g., variable T is sea surface temperature with units of ****o****C**

**Syntactic and Semantic Metadata**

## Semantic metadata provides the information needed to label the axes in a plot:

**Semantic**** **metadata provides the information needed to label the axes in a plot:

**Syntactic and Semantic Metadata**

- Temperature (oC)
- 0   4   8   12   16   18

- 20     30     40
- Time (Hours)

## Syntactic metadata provides the information needed to read and plot the data, but in general not to label the axes.

**Syntactic and Semantic Metadata**

## Objective of OPeNDAP

- To provide a data access protocol allowing for machine-to-machine interoperability with semantic meaning in a distributed, heterogeneous data environment

**The scripted exchange of data between computers, without human intervention.**

## OPeNDAP System elements

- Servers
- Clients
- Aggregation Server
- Processing Servers
- Ancillary Information Services
- Browser Interfaces
- Data System Integrators (ODC)

**OPeNDAP System elements**

## Servers

- Servers receive requests and provide responses via the DAP.

- Servers convert the data from the form in which they are stored to the OPeNDAP data model.

- Servers provide for subsetting of the data.

## Aggregation Server

- The Aggregation Server receives requests and makes responses via the DAP and
-      It makes requests and receives responses via the DAP.

- The Aggregation Server presents a single data object to the user for multi-file data sets of arrays or grids.

## Processing Servers

- The processing server performs operations on the data in addition to transformation to the OPeNDAP data model and subsetting, e.g.
- Average
- Sum
- ...

- There are currently two examples of processing servers:
- GrADS Data Server (GDS)
- Ferret Data Server (FDS)

## Anagram Server

- Anagram - a modular Java framework for high-performance scientific data servers  (http://grads.iges.org/anagram/)
*What is Anagram?*
- Anagram is a prototype framework designed to ease the development of the diverse data servers which will be needed as the community moves towards distributed data processing.
- It provides a collection of reusable components that address the needs common to high-performance scientific data servers. In particular, Anagram can greatly facilitate the development of new servers that support the OPeNDAP (a.k.a. DODS) subsetting protocol on a diverse range of back-end data storage formats.

- GDS and Ferret DODS Server

##  Note that in distributed systems responsibility is distributed. The data and metadata lies with the data providers.

**Responsibility**

- Data location: GCMD, THREDDS, DIMES, ...

- Application packages (Matlab, Ferret, GrADS, IDL, IDV, Excel...) with the developers of these packages.

- The data access protocol lies with OPeNDAP.

## Data Availability Overview

- GFDL:  Coupled Models, Control and Perturbation
-  	 Integrations and historical 20th century simulations
- 	 using solar, volcano, GHG and aerosol forcings.
- FSL:      MADIS mesoNets, Hi-Res RUC-II
- NCAR:  Community Climate System Model / Land Surface
-               CO2 predictive models (VEMAP), Reanalysis /  Eta
- NCDC:  Archive for NCEP model input/output / Select NCDC
-               Observation datasets, Ocean/Ice WAVE, NARR, SST’s...
- NCEP:   Real-time Input/Output, Reanalysis (I&II),  Ensembles, Sea
-               Ice Ocean, CDAS, Hourly Eta, Climate Forecast Models...
- LLNL:   AMIP / Probabilistic information
- PMEL:   Ocean and Climate datasets

*Data Availability Overview*

## NCDC and NCEP Data

*NCDC and NCEP Data*

-   NCDC NOMADS Archive
-  NWP from NCEP
-  POR: 2002 to Real-Time
-  Eta (12km); GFS (1 degree); GDAS; NARR 12km 30yrs
-  RUC-II 20/40km; Ocean and Ice WAVE Models
-  NCDC Reference Data Sets (Reynolds SST’s, GHCN...)
-  NCDC Mirror site to NCEP NOMADS for Eta & GFS
-  NCEP Real-Time NOMADS
-  Global Forecast System GFS 1 degree
-  Hourly Eta at 12km
-  Regional Spectral Model (RSM) and Ensembles
-  Climate Data Assimilation System (CDAS)
-  AMIP Climate Monitoring, Climate Forecast Model
-  NCEP/NCAR Global Reanalysis 1&2

## Model Input: NCEP GDAS

-   model output products as close as possible to NCEP operations.
-  The analysis files will be in the models own coordinate system.
-  Files are constructed with computer and computational efficiency
-   in mind, and not in standard coordinate systems.
-  Programs to convert  these files are available upon request:
-  spectral to gaussian
-  gaussian to lat/lon
-  sigma to pressure

*Model Input: NCEP GDAS*

## NCEP GDAS (cont.)

*NCEP GDAS (cont.)*

-   The minimum set for Global Spectral Forecast Model and the Spectral
- Statistical Interpolation Cycling Analysis System contains ~0.5Gb /run:

- - NOAA-15/16 AMSU-A/B TOVS 1B Radiances (IEEE)
- - Analysis Bias Corrected Information / Obs Toss List
- - SFC U/A, ACRS, Aircft (BUFR)
- - 6HR fcst guess from previous run (BUFR)
- - ERSCAT Sat obs / HIRS 14/15, MSU TOVS (IEEE)
- - Guess prep and and fcst guess output (BUFR)
- - Analysis ready QC’ed Obs. (prepBUFR)
- - Profiler, TOVS, Wind Obs. (BUFR)
- - SFC Analysis Restart Files
- - SST’s (GRIB), Radar VAD Winds (BUFR)

## THREDDS Data Providers

- University of Alabama Huntsville** (Sara Graves, Rahul Ramachandran, Steve Tanner, Ken Keiser) **
- ARM** (Atmospheric Radiation Measurement, Chris Klaus) **
- CDC**, the Climate Diagnostic Center (Roland Schweitzer) **
- COLA**, Center for Oceans Land Atmosphere (Joe Wielgosz)**
- University of Florence** (Stefano Nativi)**
- GMU**, George Mason University (Menas Kafatos and Ruixin Yang) **
- IRI/LDEO**, International Research Institute/Lamont Doherty Earth Observatory (Benno Blumenthal)**
- ESG**, the Earth System GRID (Luca Cinquini, NCAR/SCD)**
- IRIS DMC**, Incorporated Research Institutes for Seismology Data Management Center (Rob Casey) **
- NCAR**, the National Center for Atmospheric Research (Don Middleton)**
- NCDC**, the National Climatic Data Center (Ben Watkins)**
- NGDC**, National Geophysical Data Center (Ted Habermann) **
**NOMADS****, NOAA Operational Model Archive and Distribution System, (Glenn Rutledge, NCDC) **
- University of Oklahoma** (Kelvin Droegemeier) **
- PMEL**, the Pacific Marine Environment Laboratory (Steve Hankin) **
- FNMOC**, Fleet Numerical Meteorological and Oceanographic Center (Phil Sharfstein) **
- SSEC**, the Space Science and Engineering Center., U. of Wisconsin-Madison (Steve Ackerman, Tom Whittaker) **
- Unidata Community ADDE servers** (Tom Yoksas, Unidata Program Center) **
*CIESIN*** (Consortium for International Earth Science Information Network, Bob Downs) **
*CUAHSI**** *****(Consortium of Universities for Advancement of Hydrologic Science, David Maidment) **
*ESIG***/NCAR (NCAR Environmental Societal Impacts Group, Bob Harriss) **
*Earthscope*** (UCAR UNAVCO, Chuck Meertens) **
*GEON ***(GEOphysical Network, Chaitan Baru, UCSD San Diego Supercomputer Center) **
*ESRI*** GIS Community ****(ESRI, Inc., Jack Dangermond, President)**** **

- So, how can I _find_ this data?

## The Unidata DODS Page

- And now the OPeNDAP Home Page http://www.opendap.org/

## Collaborator: NASA GCMD

*Collaborator: NASA GCMD*

## GCMD Access to Community Data

**   ****Portals**

**GCMD Access to Community Data**

## GCMD DODS/OPeNDAP Portal

**http://gcmd.gsfc.nasa.gov/Data/portals/dods/**

**http://gcmd.gsfc.nasa.gov/Data/portals/dods/freetext/ft_search.html**

## The ODC

**The ODC**

## Other Portals: NCAR

*Other Portals: NCAR*

## NOMADS Main Page

*NOMADS Main Page*

- So, how can I _get_ this data?

## NCDC Web Interface

*NCDC Web Interface*

- Three primary
- methods for data
- access:
-  Web Interface
-  OPeNDAP
-  ftp w/ on the fly
-   Grib subsetting
- On-line or
- Off-line (archive)
- Server-side data
- Computations...

## NCDC Web Interface (cont.)

*NCDC Web Interface (cont.)*

- The NCDC Web Interface originally developed at NCEP:

- NOMADS leverages efforts across the community.

## NCEP “Web Plotter” 

*NCEP “Web Plotter” *

-   Developed at NCEP.
-   NCDC ingests 250K
- grids/day.  POR 2002
- to present.
-   Any one of these
- accessible in seconds
- Via:	OpENDAP
- 	GDS
-         	ftp
-         	Web Plotter
- 	LAS (soon)

## Providers: NCEP

*Providers: NCEP*

## Providers: GFDL

*Providers: GFDL*

## Providers: FSL

*Providers: FSL*

## Tools for Users

*Tools for Users*

- Pare down large file sizes of high resolution data and products.
- (re-) Group different data sets to create needed products – such as initialization files for model development, analysis, and intercomparison.
- Subset the data sets in parameter space
- Subset the data sets in physical space
- Subset the data sets in temporal space

- So, how can I _work with_ this data?

## ... Using http to extract data from     a  NOMADS OPeNDAP Server:

**http://140.90.198.156:9090/dods/eta/eta20030527/eta_00z.ascii?tmpprs[0:0][0:0][130:130] [290:290]**
**the order of the square bracket values is:**
** ****[time][level][lat][lon]**
** ****where lat is measured from the south pole (0) to NP (180)**
**In units represented by the metadata descriptor file.**
**(Use a “wget” and the URL in cron or a cgi-bin script provides needed values.) **
**	****	****	****	****	****	****Example for OLR:**

## Retrieving ascii from binary GRIB ulwrfsfc (OLR) from NCEP 

** ****wget w/ OLR example **
**File (url): level, lat, lon ****()time is known using [Fn]**
**-- I need to know what variable I want and where in the given coordinate system: **
**      ****ULWRFsfc 1 level * surface Upward long wave flux [W/m^2]  ****(lat/lon)**
**-- and where the data is located (url):**
_**http://nomad2.ncep.noaa.gov:9090/dods/gdas/rotating/gdas2003092000/ **_
**-- then pull an ascii value directly from grib binary using OPeNDAP constraint: **
_**.ascii?ulwrfsfc[0:1][140:140][200:200]\**_
**Returned by http:**
**256**
**This is ****ULWRFsfc  in W/m^2****  !!!**

##      You can easily develop scripts

**Imagine the power here for users of NWP data– **
**   ****Data is extracted on the fly- without large expensive data ingest systems, no grib decoding necessary.  **
**One just gets the INFORMATION desired. Many other examples freely avbl...   **

## Examples: Grads Script

- 'reinit' '!date -u +%y%m%d%H > dummy'
- modeldate = read(dummy)
- newdate = sublin(modeldate,2)
- year = substr(newdate,1,2)
- month = substr(newdate,3,2)
- day = substr(newdate,5,2)
- hour = substr(newdate,7,2) fhr = hour-2
-  'sdfopen http://nomads.ncdc.noaa.gov:9090/dods/NCDC_NOAAPort_RUC/20
- 'year month'/20'year month day'/ruc2_236_20'year month day'_'fhr'00_fff'
- *Prepare the map
- 'set mpdset hires'
- 'set mproj scaled'
- 'set lat 25 45'
- 'set lon -95 -75'
- 'set grid off'
- 'set grads off'

*Examples: Grads Script*

- All that’s needed for forecast operations...?

## *Query the user for a variable to plot and display it prompt 'What variable would you like to display? 
' pull variable 
'set t 2' 
'd 'variable 
*'run cbarn.gs‘
 'q time' 
date = subwrd(result, 3) 
hour = substr(date, 1, 3) 
day = substr(date, 4, 2) 
mon = substr(date, 6, 3) 
iyr = substr(date, 9, 4) 
'draw title RUC2 'variable' : 'hour' 'mon' 'day', 'iyr 
'set t 1' 
time='query time' 
time 
timea = substr(result, 8, 3) 
timeb = substr(result, 11, 2)
timec = substr(result, 13, 3)
timed = substr(result, 16, 4) 
'draw string 0.25 0.40 Model run from ' 
'draw string 0.25 0.25 ' timea '-' timeb '-' timec '-' timed ' ' 
'draw rec .19 .13 2.23 0.55 ' 

- ' pull variable
- 'set t 2'
- 'd 'variable
- *'run cbarn.gs‘
-  'q time'
- date = subwrd(result, 3)
- hour = substr(date, 1, 3)
- day = substr(date, 4, 2)
- mon = substr(date, 6, 3)
- iyr = substr(date, 9, 4)
- 'draw title RUC2 'variable' : 'hour' 'mon' 'day', 'iyr
- 'set t 1'
- time='query time'
- time
- timea = substr(result, 8, 3)
- timeb = substr(result, 11, 2)
- timec = substr(result, 13, 3)
- timed = substr(result, 16, 4)
- 'draw string 0.25 0.40 Model run from '
- 'draw string 0.25 0.25 ' timea '-' timeb '-' timec '-' timed ' '
- 'draw rec .19 .13 2.23 0.55 '

*Examples: Grads Script*

- These two slides show the
- entire programming effort
- to obtain real-time RUC
- models and display or
- analyze that data!
- Many scripts exist with
- a large Grads member
- Community and a growing
- Script library...

## The IGES/COLA GrADS Script Library

http://grads.iges.org/grads/gadoc/gadocindex.html

COLA GRADSDocumentationIndex
 “S”  “Script Library”

**http://grads.iges.org/grads/gadoc/gadocindex.html**
**COLA******** GRADS********Documentation********Index**
** “****S” ******** “Script Library”**

*The GrADS Script Library*

## At left is the complete script for generating 

- * January Mean 500 Height (1981 to 1989) minus (1990 to 1998)
- * Mean & Standard Deviation for all 10 ensembles
- * Time required: 60 secs
- 'reinit'
- '!date'
- * baseURL  = 'http://motherlode.ucar.edu:9090/dods/_expr_'
- * GKR 2/13/03  New NCAR URL
- baseURL  = 'http://dataportal.ucar.edu:9191/dods/'
- expr = 'ave(z,t=387,t=483,12)-ave(z,t=495,t=591,12)'
- xdim = '0:360'
- ydim = '20:90'
- zdim = '500:500'
- tdim = '1nov1978:1nov1978'
- 'sdfopen 'baseURL'_expr_{C20C/C20C_A}{'expr'}{'xdim','ydim','zdim','tdim'}'
- 'sdfopen 'baseURL'_expr_{C20C/C20C_B}{'expr'}{'xdim','ydim','zdim','tdim'}'
- 'sdfopen 'baseURL'_expr_{C20C/C20C_C}{'expr'}{'xdim','ydim','zdim','tdim'}'
- 'sdfopen 'baseURL'_expr_{C20C/C20C_D}{'expr'}{'xdim','ydim','zdim','tdim'}'
- 'sdfopen 'baseURL'_expr_{C20C/C20C_E}{'expr'}{'xdim','ydim','zdim','tdim'}'
- 'sdfopen 'baseURL'_expr_{C20C/C20C_F}{'expr'}{'xdim','ydim','zdim','tdim'}'
- 'sdfopen 'baseURL'_expr_{C20C/C20C_G}{'expr'}{'xdim','ydim','zdim','tdim'}'
- 'sdfopen 'baseURL'_expr_{C20C/C20C_H}{'expr'}{'xdim','ydim','zdim','tdim'}'
- 'sdfopen 'baseURL'_expr_{C20C/C20C_I}{'expr'}{'xdim','ydim','zdim','tdim'}'
- 'sdfopen 'baseURL'_expr_{C20C/C20C_J}{'expr'}{'xdim','ydim','zdim','tdim'}'
- 'define resa = result.1'
- 'define resb = result.2'
- 'define resc = result.3'
- 'define resd = result.4'
- 'define rese = result.5'
- 'define resf = result.6'
- 'define resg = result.7'
- 'define resh = result.8'
- 'define resi = result.9'
- 'define resj = result.10'
- say 'got data'
- 'set lev 500'
- 'set lat 20 90'
- 'define mean = (resa + resb + resc + resd + rese + resf + resg + resh + resi + resj)/10'
- 'define d1 = (pow(resa-mean,2))' ; 'define d2 = (pow(resb-mean,2))'
- 'define d3 = (pow(resc-mean,2))' ; 'define d4 = (pow(resd-mean,2))'
- 'define d5 = (pow(rese-mean,2))' ; 'define d6 = (pow(resf-mean,2))'
- 'define d7 = (pow(resg-mean,2))' ; 'define d8 = (pow(resj-mean,2))'
- 'define d9 = (pow(resi-mean,2))' ; 'define d10 = (pow(resj-mean,2))'
- 'define stddev = pow((d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10)/10,0.5)'
- 'set gxout shaded'
- 'set mproj nps'
- 'display mean'
- 'draw title January Mean 500 Height (1981 to 1989) minus (1990 to 1998)'
- 'set string 3 bc 1'
- 'draw string 5.5 .5 Mean & Standard Deviation for all 10 ensembles:
- ‘C20C  Climate of the 20th Century Folland/Kinter'
- *'cbarn'
- 'set gxout contour'
- 'set ccolor 0'
- 'display stddev'
- '!date'

- At left is the complete script for generating
- mean and sdev at 500mb analyzing 18 years of
- “_Climate of the 20__th __Century_” over the Internet:
-            _Traditional_ vs.	_*NOMADS*_ methods:
- Data volume transported: 100Gb vs. 2Kb
- Time to access data:	   2 days vs. 60 sec
- Code development: 	   days    vs. minutes
- Fortran based LOC:	  1000    vs. 50 LOC

## MATLAB: A Commercial Client

**server=‘nomad2:9090’;**
**directory=‘/dods/gdas/rotating/’;  fext=‘ascii’;**
**model=‘gdas’;  datestr=‘YYYYMMDDHH’;  varname=‘hgt’;**
**varlevs=‘1’; **
**Arrc=[‘[‘,t1,’:’,t2,’][‘,nlev1,’:’,nlev2,’][‘,ilat1,’:’,ilat2,’][‘,ilon1,’:’,ilon2,’]’];**
**urlstring=[http://’,server,directory,model,datestr,’.’,fext,’?’,varname,arrc];**
**url = java.net.URL(urlstring);    % connect to web page**
**Try**
**     ****stream = openStream(url)**
**     ****ireader = java.io.InputStreamReader(stream);**
**     ****breader = java.io.BufferedReader(ireader);**
**Line = readLine(breader);       disp(line);             **

## Unidata’s

**Unidata’s**
**IDV & NOMADS **
**Access**

## Value added retailers who make value added products can use NOMADS GDS to get the meteorological data they need without downloading entire files.

Users (forecasters) of NDFD can create their own products using GDS server accessing only data they need.  No need for image generation of ensembles...

GDS reduces the bandwidth needed to create products in weather service operations.

For internet-2 bandwidth, servers at Regional Centers can distribute data to WFO’s for their operations.

**Users (forecasters) of NDFD can create their own products using GDS server accessing only data they need.  No need for image generation of ensembles...**
**GDS reduces the bandwidth needed to create products in weather service operations.**
**For internet-2 bandwidth, servers at Regional Centers can distribute data to WFO’s for their operations.**

- National Digital Forecast Database

**Value Added Products**

## Ensemble Probabilities

- http://nomad3.ncep.noaa.gov/cgi-bin/var/ensprob1.pl

**Value Added Products (cont.)**

## Ensemble Probabilities: a demo (cont.)

- Event: Precipitation, gt 1 mm/day
- member=c0URL is: http://nomad3.ncep.noaa.gov:9090/dods/enshires/archive/ens20040813/
- ensc0_00z_1x1.ascii?pratesfc[2:2][125:125][277:277]rainmem=1.3824member=n1URL is: http://nomad3.ncep.noaa.gov:9090/dods/enshires/archive/ens20040813/
- ensn1_00z_1x1.ascii?pratesfc[2:2][125:125][277:277]rainmem=1.0368member=n2
- ...

- TODAY is: 2004, 08, 13 The station is: ASHEVILLE_MUNICIPAL NC US

## NOMADS:  OPeNDAP Enabled Portals

- NOMADS:  OPeNDAP Enabled* Portals*

- CDC:		_[http://www.cdc.noaa.gov/cgi-bin/nph-nc/Datasets/](http://www.cdc.noaa.gov/cgi-bin/nph-nc/Datasets/)_
- COLA: 	_[http://cola8.iges.org:9090/dods](http://cola8.iges.org:9090/dods)_
- FSL:		_[http://nomads.fsl.noaa.gov/](http://nomads.fsl.noaa.gov/)_
- GFDL:		_[http://nomads.gfdl.noaa.gov/](http://nomads.gfdl.noaa.gov/)_
- NCDC: 	http://nomads.ncdc.noaa.gov/
- NCEP:		http://nomad1.ncep.noaa.gov/
- Unidata:	http://www.unidata.ucar.edu/cgi-bin/dods/datasets/

## For more Program Information see:
		http://www.ncdc.noaa.gov/oa/climate/nomads/nomads.html

To get data:
	NOAA NCDC Main Page  Climate    Model Resources
				http://nomads.ncdc.noaa.gov

Or contact:
				Glenn.Rutledge@noaa.gov

Selected Publications:
				http://www.ncdc.noaa.gov/oa/model/publications/publications.html

**	****	****http://www.ncdc.noaa.gov/oa/climate/nomads/nomads.html**
**To get data:**
**	****NOAA NCDC Main Page ******** Climate  ********  *****Model Resources***
**	****	****	****	****http://nomads.ncdc.noaa.gov**
**Or contact:**
**	****	****	****	**_**[Glenn.Rutledge@noaa.gov](mailto:Glenn.Rutledge@noaa.gov)**_
***Selected Publications:***
***	******	******	******	******http://www.ncdc.noaa.gov/oa/model/publications/publications.html***

*For more information...*

- Live Demo and Questions...