idl support of hdf
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 PresentationTRANSCRIPT
IDL Support of HDFIDL Support of HDF
Tad ScheiblichTad Scheiblich
RSIRSI
December 2, 2005December 2, 2005
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
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
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
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
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
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
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
For More InformationFor More Information
http://www.RSInc.com/IDLhttp://www.RSInc.com/IDL
(303) 786-9900(303) 786-9900
Thank You!-Tad Scheiblich