tools and examples that improve the interoperability of nasa hdf-eos data

2
Tools and Examples that Improve the Interoperability of NASA HDF-EOS Data MuQun Yang, Hyo-Kyung Lee, and Mike Folk The HDF Group The HDF Group has developed and maintained the following tools for the interoperability of NASA HDF and HDF-EOS data. Some tools are still under active development. Use netCDF tools to access HDF-EOS via OPeNDAP Use NetCDF-4 to access HDF- EOS5 Use HDF4 XML Map Writer to access HDF4 using generic file readers http://hdfeos.org This work was supported by cooperative agreement number NNX08AO77A from the National Aeronautics and Space Administration (NASA). Any opinions, findings, conclusions, or recommendations expressed in this material are those of the author[s] and do not necessarily reflect the views of the National Aeronautics and Space Administration. HDF4/5 Files Users OPeNDAP Clients OPeNDAP Servers libnc-dap HDF4/5 Handlers Terra/Aqua/Aura Translation Layers netCDF Visualization Tools DAP HDF5 HDF-EOS5 HDF-EOS5 file HDF5 NetCDF4 NetCDF-4 file Augmented HDF-EOS5 file Augmentation Use HDF-EOS2 Dumper to help the access of HDF-EOS2 using IDL and MATLAB HDF4 File HDF4 Mapping File (XML document) hmap linked with HDF4 library Reader program Object Data Groups, Data Objects, Structural and Application Metadata; Locations of Object Data HDF-EOS2 File HDF-EOS2 Dumper Extract geo-location information Latitude Longitude in ASCII file HDF SDS Interface Text file Interface MATLAB IDL Example Usage: %eos2dump –a1m MYD02HKM.A2010031.0035.005.2010031183706.hdf Example Latitude Output: -61.0802, -61.0949, - 61.1096, -61.1241, -61.1387, - 61.1531, -61.1675, -61.1818,- 61.196, Use cases: HDF-EOS2 files with non- geographic projections, like SINSOID and SOM, and swath dimension maps.

Upload: vachel

Post on 22-Feb-2016

39 views

Category:

Documents


0 download

DESCRIPTION

Tools and Examples that Improve the Interoperability of NASA HDF-EOS Data. HDF4 Mapping File (XML document). hmap linked with HDF4 library. http://hdfeos.org. Text file Interface. Object Data. NetCDF-4 file. MuQun Yang, Hyo -Kyung Lee, and Mike Folk The HDF Group - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Tools and Examples that Improve the Interoperability of NASA HDF-EOS Data

Tools and Examples that Improve the Interoperability of NASA HDF-EOS Data

MuQun Yang, Hyo-Kyung Lee, and Mike FolkThe HDF Group

The HDF Group has developed and maintained the following tools for the interoperability of NASA HDF and HDF-EOS data. Some tools are still under active development.

Use netCDF tools to access HDF-EOS via OPeNDAP

Use NetCDF-4 to access HDF-EOS5

Use HDF4 XML Map Writer to access HDF4 using generic file readers

http://hdfeos.org

This work was supported by cooperative agreement number NNX08AO77A from the National Aeronautics and Space Administration (NASA). Any opinions, findings, conclusions, or recommendations expressed in this material are those of the author[s] and do not necessarily reflect the views of the National Aeronautics and Space Administration.

HDF4/5 Files

Users

OPeNDAP Clients

OPeNDAP Servers

libnc-dap HDF4/5 Handlers

Terra/Aqua/Aura

Translation Layers

netCDF Visualization Tools

DAP

HDF5

HDF-EOS5

HDF-EOS5file HDF5

NetCDF4

NetCDF-4file

AugmentedHDF-EOS5

file

Augmentation

Use HDF-EOS2 Dumper to help the access of HDF-EOS2 using IDL and MATLAB

HDF4 File HDF4 Mapping File (XML document)

hmaplinked with HDF4 library

Readerprogram

Object Data Groups, Data Objects, Structural and Application

Metadata; Locations of Object Data

HDF-EOS2 File

HDF-EOS2 DumperExtract geo-location

information

LatitudeLongitude in ASCII file

HDF SDS Interface Text file InterfaceMATLABIDL

Example Usage: %eos2dump –a1m MYD02HKM.A2010031.0035.005.2010031183706.hdf

Example Latitude Output:-61.0802, -61.0949, -61.1096, -61.1241, -61.1387, -61.1531, -61.1675, -61.1818,-61.196, …

Use cases: HDF-EOS2 files with non-geographic projections, like SINSOID and SOM, and swath dimension maps.

Page 2: Tools and Examples that Improve the Interoperability of NASA HDF-EOS Data

MATLAB and IDL examples that use the HDF-EOS2 Dumper outputs

OPeNDAP Examples

HDF4 XML Map Writer Example

http://hdfeos.org

Acknowledgements: We thank Dan Marinelli, Carol Boquist and Rama Ramapriyan of the NASA ESDIS project; Christopher Lynnes, James Johnson and Fan Fang from NASA GES DISC; Ruth Duerr from NSIDC; James Gallagher from OPeNDAP, Inc.; Cheryl Craig from HIRDLS team; UCAR's NCL User Group and John Evans from MathWorks for their valuable suggestions and help.

NSIDC AMSR_E IDV NSIDC AMSR_E Panoply LaRC MISR Panoply

HDF-EOS5 Augmentation Tool Example

GRIDSHDFEOS

CloudFractionAndPressureData Fields

CloudFraction[XDim][YDim]CloudPressure[XDim][YDim]

XDim

YDim

Provide coordinatesrequired by netCDF-4.

[nLevels][nTimes]

Provide the connections between dimension and dimension scales.

Products supported: NASA Aura HIRDLS, MLS, OMI, TES, and

MEaSUREs GSSAP

Provide offset and bytesof HDF4 objects in XML.

/* Open the hdf file for reading. */ infile = fopen(hdfname, "rb"); if(infile == NULL) { printf("Error opening file: %s\n", hdfname); exit(EXIT_FAILURE); } /* Read the dataset into the buffer. */ buffer = malloc(nBytes); fseek(infile, offset, 0); fread(buffer, 1, nBytes, infile);Read binary data

with fseek() and fread() in C.

def __init__(self,hdf_fileName): try: #it opens the HDF creating a file object file_path=path.normpath(hdf_fileName) self.file_handler=file(file_path,"rb") …self.file_handler.seek(int(chunk.attrib["offset"]),0) #if chunk.attrib["compression"] in ("zlib","szip","DEFLATE"): tmp_buffer_object.write(self.file_handler.read(int(chunk.attrib["nBytes"])))Read binary data

with seek() and read() in Python.

LAADS MODIS Aqua IDL (Swath)

LP DAAC MODIS Terra MATLAB

(Grid)

NSIDC AMSR_E IDL (Polar Grid)

GES DISC MLS PanoplyGES DISC OMI IDV

GES DISC AIRS IDV

LAADS MODIS Panoply

LP DAAC MODIS IDV