9
IDL Support of HDF IDL Support of HDF Tad Scheiblich Tad Scheiblich RSI RSI December 2, 2005 December 2, 2005

IDL Support of HDF

Embed Size (px)

DESCRIPTION

IDL Support of HDF. Tad Scheiblich RSI December 2, 2005. What is IDL?. Interactive Data Language Extensive Cross-Platform Libraries: Interactive Visualization Data Processing Scientific File Formats GUI Development. History & Background. 28 year history with NCAR & NASA - PowerPoint PPT Presentation

Citation preview

Page 1: IDL Support of HDF

IDL Support of HDFIDL Support of HDF

Tad ScheiblichTad Scheiblich

RSIRSI

December 2, 2005December 2, 2005

Page 2: IDL Support of HDF

What is IDL?What is IDL?

Interactive Data LanguageInteractive Data Language

• Extensive Cross-Platform Extensive Cross-Platform Libraries:Libraries:– Interactive Interactive

VisualizationVisualization– Data ProcessingData Processing– Scientific File FormatsScientific File Formats– GUI DevelopmentGUI Development

Page 3: IDL Support of HDF

History & BackgroundHistory & Background

• 28 year history with NCAR & NASA28 year history with NCAR & NASA• Extensively used at NOAAExtensively used at NOAA• Based in Boulder, COBased in Boulder, CO

– Offices WorldwideOffices Worldwide

• Currently on version 6.2Currently on version 6.2

Page 4: IDL Support of HDF

History with HDFHistory with HDF

• HDF Support HDF Support Introduced in Introduced in IDL 4.0IDL 4.0

• HDF5 Support HDF5 Support Added in IDL Added in IDL 5.65.6

Page 5: IDL Support of HDF

The HDF LibrariesThe HDF Libraries

• Thin-Wrappers to Thin-Wrappers to Native C LibrariesNative C Libraries

• HDF5 1.6.3HDF5 1.6.3• HDF 4.1r5HDF 4.1r5

; create HDF5 file file = 'hdf5_out.h5' fid = H5F_CREATE(file) ; create some data data = hanning(100,200) ; create a datatype datatype_id = H5T_IDL_CREATE(data) ; create a dataspace, allow the dataspace to be extendable dataspace_id = $ H5S_CREATE_SIMPLE([100,100],max_dimensions=[200,200]) ; create the dataset dataset_id = $ H5D_CREATE(fid,'Hanning',datatype_id,dataspace_id, $ chunk_dimensions=[20,20]) ; extend the size of the dataset to fit the data H5D_EXTEND,dataset_id,size(data,/dimensions) ; write the data to the dataset H5D_WRITE,dataset_id,data

Page 6: IDL Support of HDF

Why IDL?Why IDL?

• Interpreted language – easier to useInterpreted language – easier to use– InteractiveInteractive– Still very performantStill very performant

• Incredible visualization capabilitiesIncredible visualization capabilities• Vast data processing libraryVast data processing library

Page 7: IDL Support of HDF

HDF5 Enhancements in IDL 6.3HDF5 Enhancements in IDL 6.3

• Opaque Data SupportOpaque Data Support

• Variable Length Data SupportVariable Length Data Support

• Enumerated Data SupportEnumerated Data Support

• Compound Data SupportCompound Data Support

Page 8: IDL Support of HDF

Other Features of InterestOther Features of Interest

• Virtual MachineVirtual Machine• iTools Interactive Data AnalysisiTools Interactive Data Analysis• netCDF SupportnetCDF Support• Cluster Computing APICluster Computing API

– MPIMPI– Task-FarmingTask-Farming

• Connectivity BridgesConnectivity Bridges– C/C++, FortranC/C++, Fortran

(Dynamically Linked(Dynamically LinkedModules)Modules)

– JavaJava– COM/ActiveXCOM/ActiveX

Page 9: IDL Support of HDF

For More InformationFor More Information

http://www.RSInc.com/IDLhttp://www.RSInc.com/IDL

(303) 786-9900(303) 786-9900

Thank You!-Tad Scheiblich