1 / 10

Using HDF5 in MATLAB

Using HDF5 in MATLAB. Jeff Mather The MathWorks HDF/HDF-EOS Workshop XI (Nov. 2007). What is MATLAB?. A high-level programming language. An interactive design, exploration, and simulation environment. A platform for performing diverse tasks in many disciplines: Math and Optimization

thina
Download Presentation

Using HDF5 in MATLAB

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Using HDF5 in MATLAB Jeff Mather The MathWorks HDF/HDF-EOS Workshop XI (Nov. 2007)

  2. What is MATLAB? • A high-level programming language. • An interactive design, exploration, and simulation environment. • A platform for performing diverse tasks in many disciplines: • Math and Optimization • Statistics and Data Analysis • Control System Design and Analysis • Signal Processing and Communications • Image Processing • Test & Measurement • Financial Modeling and Analysis • Application Deployment • Database Connectivity and Reporting • Distributed Computing

  3. MATLAB’s support for HDF products HDF4 (v4.2r1) HDF-EOS2 (v2.12v1.00) HDF5 (v1.6.5)

  4. A typical HDF5 function herr_t H5Dread(hid_t dataset_id, hid_t mem_type_id, hid_t mem_space_id, hid_t file_space_id, hid_t xfer_plist_id, void * buf ) success = H5Dread(dataset, H5T_STD_I32BE, H5S_ALL, H5S_ALL, H5P_DEFAULT, buffer);

  5. A typical HDF5 function herr_t H5Dread(hid_t dataset_id, hid_t mem_type_id, hid_t mem_space_id, hid_t file_space_id, hid_t xfer_plist_id, void * buf ) success = H5Dread(dataset, H5T_STD_I32BE, H5S_ALL, H5S_ALL, H5P_DEFAULT, buffer); (1) Note the void*. (2) Note the frequent use of defined values and “constants.” (3) Note the success value on the left-hand side. (4) Note the appearance of output on the right-hand side.

  6. A typical MATLAB function [N, X] = hist(DATA) • Multiple left-hand arguments. • Outputs on the left, inputs on the right. • Very weakly typed.

  7. Calling an HDF5 function in MATLAB C success = H5Dread(dataset, H5T_STD_I32BE, H5S_ALL, H5S_ALL, H5P_DEFAULT, buffer); MATLAB buffer = H5D.read(dataset, ‘H5T_STD_I32BE’, ‘H5S_ALL’, ‘H5S_ALL’, ‘H5P_DEFAULT’)

  8. Let’s look at examples in MATLAB…

  9. H5ML.compare_values H5ML.get_constant_names H5ML.get_constant_value H5ML.get_function_names H5ML.get_mem_datatype H5ML.hoffset H5ML.sizeof + H5ML.id The H5ML interface

  10. Getting help • To see what’s in a package: “help H5D” • For help on an HDF5 function: “help H5D.read” • To use the full power of HDF5, you need to understand the C or Fortran interface. • E-mail support@mathworks.com.

More Related