Supporting HDF5 in GrADS

Jennifer M. Adams and Brian E.
Doty IGES/COLA
What is GrADS?


GrADS is an interactive desktop tool
used for easy access, analysis, and
visualization of earth science ...
Outline
GrADS Development
 The Ensemble Dimension
 GrADS and HDF

GrADS Development
Fifth ensemble dimension
 New interfaces for GRIB2 and HDF5
 Internal data handling in double
precisio...
Ensemble Handling


A true 5th dimension for ensemble
members
„set X, Y, Z, T, or E‟



A virtual dimension for forecast...
GrADS Metadata Requirements
for Ensemble Members
Unique name / number
 Initial time
 Length
 One time axis must span al...
The GrADS-GDS Coupled
System


The GDS serves any GrADS data set



GrADS is a client for all GDS data sets



The NetC...
Ensemble
Member

Ensembles: Same Length, Same Initial Time

Time Axis ---->
Ensemble
Member

Ensembles: Same Length, Different Initial Times

Time Axis ---->
Ensemble
Member

Ensembles: Same Length, Different Initial Times

Time Axis ---->
Ensemble
Member

Ensembles: Same Length, Different Initial Times

Time Axis ---->
Ensemble
Member

Ensembles: Same Length, Different Initial Times

Time Axis ---->
Ensemble
Member

NCEP CFS: Different Lengths, Different Initial Times

Time Axis ---->
Ensemble
Member

“ new = variable (ft=2) ”

Time Axis ---->
Ensemble
Member

“ new = ftloop (variable, ftime=12hr, ftime=48hr) ”

Time Axis ---->
GrADS and HDF: A Brief History


GrADS reads HDF4 and NC files
Metadata must be COARDS-compliant
Uses NC v2 API



GrADS...
GrADS 1.9 Executables
NetCDF

HDF4

DODS

-

-

-

Core libs

gradshdf

Read

Read/Writ
e

-

Core libs + libdf +
libmfhdf...
GrADS and HDF: Current Events


GrADS (now GPL) must drop (copyrighted) LATS



New interfaces to be written for NC and ...
GrADS 2.0 Executables
NetCDF

Read

(Write TBA)

gradsda
p

OPeNDA
P

Read

grads

HDF4
(Write TBA)

-

Read

Read

(Write...
GrADS and HDF5: The Future


First Option: Link with NetCDF-4 library
Very easy
Only supports HDF5 created with NetCDF-

...
Upcoming SlideShare
Loading in …5
×

Supporting HDF5 in GrADS

692 views

Published on

This slide explains how GrADS can access HDF5 files.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
692
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Supporting HDF5 in GrADS

  1. 1. Supporting HDF5 in GrADS Jennifer M. Adams and Brian E. Doty IGES/COLA
  2. 2. What is GrADS?  GrADS is an interactive desktop tool used for easy access, analysis, and visualization of earth science data.  Two data models: gridded and in situ  Handles many data formats: binary, GRIB, BUFR, netCDF, and HDF4  OPeNDAP-enabled client and server (GDS)
  3. 3. Outline GrADS Development  The Ensemble Dimension  GrADS and HDF 
  4. 4. GrADS Development Fifth ensemble dimension  New interfaces for GRIB2 and HDF5  Internal data handling in double precision  Mask for missing data  Graphics improvements  New output options for GIS applications  Third data model: Quasi-regular grids 
  5. 5. Ensemble Handling  A true 5th dimension for ensemble members „set X, Y, Z, T, or E‟  A virtual dimension for forecast time offset „display sst(ft=2)‟ „display sst(ftime=24hr)‟
  6. 6. GrADS Metadata Requirements for Ensemble Members Unique name / number  Initial time  Length  One time axis must span all members  All members must share common grid 
  7. 7. The GrADS-GDS Coupled System  The GDS serves any GrADS data set  GrADS is a client for all GDS data sets  The NetCDFification of the ensemble metadata must be meaningful to GrADS  Emerging metadata standard for ensembles
  8. 8. Ensemble Member Ensembles: Same Length, Same Initial Time Time Axis ---->
  9. 9. Ensemble Member Ensembles: Same Length, Different Initial Times Time Axis ---->
  10. 10. Ensemble Member Ensembles: Same Length, Different Initial Times Time Axis ---->
  11. 11. Ensemble Member Ensembles: Same Length, Different Initial Times Time Axis ---->
  12. 12. Ensemble Member Ensembles: Same Length, Different Initial Times Time Axis ---->
  13. 13. Ensemble Member NCEP CFS: Different Lengths, Different Initial Times Time Axis ---->
  14. 14. Ensemble Member “ new = variable (ft=2) ” Time Axis ---->
  15. 15. Ensemble Member “ new = ftloop (variable, ftime=12hr, ftime=48hr) ” Time Axis ---->
  16. 16. GrADS and HDF: A Brief History  GrADS reads HDF4 and NC files Metadata must be COARDS-compliant Uses NC v2 API  GrADS writes HDF4 and NC files Uses LATS interface and NC v2 API  GrADS becomes a DODS client NC v3 API is added  New interface for non-compliant HDF4 and NC files External metadata is user-provided Uses SD and NC APIs
  17. 17. GrADS 1.9 Executables NetCDF HDF4 DODS - - - Core libs gradshdf Read Read/Writ e - Core libs + libdf + libmfhdf gradsnc Read/Writ e - - Core libs + libnetcdf gradsdod s Read/Writ e - Read Core libs + libnc-dap gradsc Libraries Core libs: X11, readline, zlib, png, gd Extra dependent libs: udunits, jpeg, szip, xml2, curl, dap, gadap
  18. 18. GrADS and HDF: Current Events  GrADS (now GPL) must drop (copyrighted) LATS  New interfaces to be written for NC and HDF output  HDF4 handling isolated using SD API exclusively  NC handling reworked using v3 API, ready for v4
  19. 19. GrADS 2.0 Executables NetCDF Read (Write TBA) gradsda p OPeNDA P Read grads HDF4 (Write TBA) - Read Read (Write TBA) (Write TBA) Read Libraries Core libs + libdf + libmfhdf + libnetcdf Core libs + libdf + libmfhdf + libnc-dap Core libs: X11, readline, zlib, png, gd, jpeg, jasper, grib2c Extra dependent libs: udunits, szip, xml2, curl, dap, gadap
  20. 20. GrADS and HDF5: The Future  First Option: Link with NetCDF-4 library Very easy Only supports HDF5 created with NetCDF- 4 Destined to repeat HDF4 history?  Second Option: Link with HDF5 library Requires a new HDF5 interface More general support of HDF5 Keeps NetCDF interface independent Necessary for quasi-regular swath data?

×