1 Zdenka Willis IOOS Program Director March 20, 2015 Carl Gouldman IOOS Deputy Director May 8, 2015.
Implementation of Model Data Interoperability for IOOS: Successes and Lessons Learned Rich Signell...
-
Upload
ashlynn-obrien -
Category
Documents
-
view
222 -
download
2
Transcript of Implementation of Model Data Interoperability for IOOS: Successes and Lessons Learned Rich Signell...
Implementation of Model Data Interoperability for IOOS:
Successes and Lessons Learned
Implementation of Model Data Interoperability for IOOS:
Successes and Lessons Learned
Rich Signell USGS Woods Hole, MA / NOAA Silver Spring USA
Rich Signell USGS Woods Hole, MA / NOAA Silver Spring USA
Model Data Interoperability
is Low-Hanging Fruit!
US Integrated Ocean Observing System (IOOS®)
IOOS® Plan defines:• Global Component• Coastal Component
17 Federal Agencies 11 Regional Associations
HF radar
DMAC approved services for Gridded Data and Model Outputs
Table ofContents
Metadata
Data Values
DataProvider
CF Metadata
QualityControl
satellite
griddedmodeloutputs
OGC WCS(Web
CoverageService)
OPeNDAP/CF
The Problem: Stovepiped Model AccessThe Problem: Stovepiped Model Access
UCLA/JPL ROMS SCB Model Yi Chao, JPL
ChesROMS Model Wen Long, UMaryland
Result: Inability to compare and assess model results & underutilization of model products
Result: Inability to compare and assess model results & underutilization of model products
The GoMOOS Nowcast/Forecast Circulation Model (University of Maine)
Issue: Ocean grids are not regularly spaced!Issue: Ocean grids are not regularly spaced!
Stretched surface and terrain following vertical coordinates
Curvilinear orthogonal horizontal coordinates
Climate and Forecast (CF) Metadata Conventions
Climate and Forecast (CF) Metadata Conventions
Groups adopting CF:
GO-ESSP: Global Organization for Earth System Science Portal
IOOS-DMAC: Integrated Ocean Observing System
ESMF: Earth System Modeling Framework
OGC: Open Geospatial Consortium (via WCS netcdf encoding)
CF-Compliant Ocean Model FileCF-Compliant Ocean Model Files_rho:standard_name = "ocean_s_coordinate" ;s_rho:formula_terms = "s: s_rho eta: zeta depth: h a: theta_s b: theta_b depth_c: hcs_rho:field = "s_rho, scalar" ;
double s_w(s_w) ;s_w:long_name = "S-coordinate at W-points" ;s_w:valid_min = -1. ;s_w:valid_max = 0. ;s_w:standard_name = "ocean_s_coordinate" ;s_w:formula_terms = "s: s_w eta: zeta depth: h a: theta_s b: theta_b depth_c: hc" ;s_w:field = "s_w, scalar" ;
float salt(ocean_time, s_rho, eta_rho, xi_rho) ;salt:long_name = "averaged salinity" ;salt:units = "PSU" ;salt:time = "ocean_time" ;salt:coordinates = "lat_rho lon_rho" ;salt:field = "salinity, scalar, series" ;
float temp(ocean_time, s_rho, eta_rho, xi_rho) ;temp:long_name = "averaged potential temperature" ;temp:units = "Celsius" ;temp:time = "ocean_time" ;temp:coordinates = "lat_rho lon_rho" ;temp:field = "temperature, scalar, series" ;
float u(ocean_time, s_rho, eta_u, xi_u) ;u:long_name = "averaged u-momentum component" ;u:units = "meter second-1" ;
NcML XML markup language for NetCDF
NcML XML markup language for NetCDF
<aggregation dimName="time" type="joinExisting"> <netcdf location="http://rocky.umeoce.maine.edu/cdfs/gomoos.20050509.cdf" /> <netcdf location="http://rocky.umeoce.maine.edu/cdfs/gomoos.20050510.cdf" /> </aggregation> <variable name="elev"> <attribute name="coordinates" value="x y" /> </variable> <variable name="depth"> <attribute name="coordinates" value="x y" /> </variable> <variable name="temp"> <attribute name="coordinates" value="x y zpos" /> </variable> <variable name="time"> <attribute name="units" value="days since 2002-01-01 00:00 UTC" /> </variable> <variable name="zpos"> <attribute name="standard_name" value="ocean_sigma_coordinate" /> <attribute name="formula_terms" value="sigma: zpos eta: elev depth: depth" /> <attribute name="positive" value="up" /> <attribute name="units" value="1" /> <attribute name="axis" value="Z" /> <values> 0 -0.002 -0.004 -0.008 -0.016 -0.024 -0.032 -0.04 -0.06 -0.08 -0.10 -0.12 -0.14 -0. </variable> <attribute name="Conventions" value="CF-1.0" />
NJ Toolkit for Matlab http://njtbx.sourceforge.netNJ Toolkit for Matlab
http://njtbx.sourceforge.net
• Objective: Make it simple to access CF data• Example function:• [t, geo]=nj_tslice(URI,’temp’,1);• t = 22x120x180 single• geo =
– lat: [120x180 single] – lon: [120x180 single]– z: [22x120x180 double]– time: 733582 (matlab datenum)
• nj_tslice works identically for ROMS, POM, ECOM, WRF, Wavewatch3
• URI can be: local NetCDF, remote NetCDF, NcML, OpenDAP Data URL
• Coding by Sachin Kumar Bhate MSSTATE
• Objective: Make it simple to access CF data• Example function:• [t, geo]=nj_tslice(URI,’temp’,1);• t = 22x120x180 single• geo =
– lat: [120x180 single] – lon: [120x180 single]– z: [22x120x180 double]– time: 733582 (matlab datenum)
• nj_tslice works identically for ROMS, POM, ECOM, WRF, Wavewatch3
• URI can be: local NetCDF, remote NetCDF, NcML, OpenDAP Data URL
• Coding by Sachin Kumar Bhate MSSTATE
Comparing Models with Data in MatlabComparing Models with Data in Matlab
Model 1: UMASS-ECOM Model 2: UMAINE-POM Data: SST 2008-Sep-08 07:32
3D Visualization with the Integrated Data Viewer (IDV)
3D Visualization with the Integrated Data Viewer (IDV)
Single Point of Access Catalog:GEO-IDE => IOOS Regions
Single Point of Access Catalog:GEO-IDE => IOOS Regions
http://ferret.pmel.noaa.gov/thredds/geoideCatalog.html
Working with Data in ArcGIS using the NOAA/ASA Environmental Data Connector
Working with Data in ArcGIS using the NOAA/ASA Environmental Data Connector
14 Different Ocean Forecast Models Spanning CONUS Waters in IDV
14 Different Ocean Forecast Models Spanning CONUS Waters in IDV
SuccessesSuccesses
• Existing Unidata technology allowed for standards-based delivery of aggregated geospatial data from native model grids that put little or no effort on the data provider
• Demonstrated interoperability with 17 THREDDS servers in 11 IOOS Regions
• What did we get? – Single point of access for regional model results– Interoperable software– More eyes on the model results– More usage of model results– Faster feedback to modelers– Improved models– Increased community support for standards-based access
• Existing Unidata technology allowed for standards-based delivery of aggregated geospatial data from native model grids that put little or no effort on the data provider
• Demonstrated interoperability with 17 THREDDS servers in 11 IOOS Regions
• What did we get? – Single point of access for regional model results– Interoperable software– More eyes on the model results– More usage of model results– Faster feedback to modelers– Improved models– Increased community support for standards-based access
What Next?What Next?
• Continue work on a high-level scientific toolbox for standardized access to model data. (Matlab toolbox based on NetCDF-Java)
• Develop unstructured grid support: Common Data Model implemented in NetCDF-Java with methods comparable to structured grid
• Applications need to be modified to read standardized data via OPeNDAP instead of home-grown files
• Work on discovery and documentation
• Continue work on a high-level scientific toolbox for standardized access to model data. (Matlab toolbox based on NetCDF-Java)
• Develop unstructured grid support: Common Data Model implemented in NetCDF-Java with methods comparable to structured grid
• Applications need to be modified to read standardized data via OPeNDAP instead of home-grown files
• Work on discovery and documentation
Lessons LearnedLessons Learned
• Honor the existing practices• Users are best served by developing
infrastructure for Developers• Focus on success: find something that works,
clone it, and build off it
• Honor the existing practices• Users are best served by developing
infrastructure for Developers• Focus on success: find something that works,
clone it, and build off it
Questions, Feedback?Questions, Feedback?
Dr. Richard P. Signell+1 (508) 457-2229
Role of RegionsRole of Regions
• Develop customized THREDDS catalogs for regional users
• Report status of services (e.g. NetCheck)• Assess and help with gridded data standards
compliance following UAF-developed techniques
• Develop end-user applications that access gridded data, using CF-compliant OPeNDAP
• Help educate regional scientists, developers, consultants that standardized services, libraries and tools are available
• Develop customized THREDDS catalogs for regional users
• Report status of services (e.g. NetCheck)• Assess and help with gridded data standards
compliance following UAF-developed techniques
• Develop end-user applications that access gridded data, using CF-compliant OPeNDAP
• Help educate regional scientists, developers, consultants that standardized services, libraries and tools are available
THREDDSTHREDDS
• When people say “THREDDS”, they can mean a catalog or a data server– THREDDS Catalogs are XML files that define
metadata, datasets and services– THREDDS Data Server is a Java data server
application developed by Unidata, a simple and flexible way for delivering CF-compliant data via OPeNDAP
• When people say “THREDDS”, they can mean a catalog or a data server– THREDDS Catalogs are XML files that define
metadata, datasets and services– THREDDS Data Server is a Java data server
application developed by Unidata, a simple and flexible way for delivering CF-compliant data via OPeNDAP
OPeNDAPOPeNDAP
• When people say “OPeNDAP”, they can mean protocol, a server, or an organization– OPeNDAP (or just DAP) protocol: a remote data
access service protocol with multiple responses• DDS – describes the format of the data• DAS – describes associated attributes• DDX – XML response containing the DDS & DAS• DODS – the actual data
– OPeNDAP server: a server capable of serving the DAP protocol (e.g. THREDDS Data Server, Hyrax, Pydap, GrADS Data Server)
– OPeNDAP organization: Defines and maintains the DAP protocol, develops servers and clients, provide custom OPeNDAP solutions
• When people say “OPeNDAP”, they can mean protocol, a server, or an organization– OPeNDAP (or just DAP) protocol: a remote data
access service protocol with multiple responses• DDS – describes the format of the data• DAS – describes associated attributes• DDX – XML response containing the DDS & DAS• DODS – the actual data
– OPeNDAP server: a server capable of serving the DAP protocol (e.g. THREDDS Data Server, Hyrax, Pydap, GrADS Data Server)
– OPeNDAP organization: Defines and maintains the DAP protocol, develops servers and clients, provide custom OPeNDAP solutions