# Difference between revisions of "Import resulting data into other applications"

Line 6: | Line 6: | ||

The structure of the HDF5 format is a tree-like structure with data elements as leaves, which are called data sets. All the indices start from 0. This structure is as follows: | The structure of the HDF5 format is a tree-like structure with data elements as leaves, which are called data sets. All the indices start from 0. This structure is as follows: | ||

− | *''<code> | + | *''<code>PSTD</code>'' |

**<domain index> | **<domain index> | ||

***<frame index> | ***<frame index> | ||

+ | *''<code>DG</code>'' since version 2.1 | ||

+ | **<frame index> | ||

*''<code>receiver</code>'' | *''<code>receiver</code>'' | ||

**<receiver index> | **<receiver index> | ||

− | For example if you want frame 100 of domain 4, the 5th domain, the data element is at ''<code>/ | + | Version 2.0 used /frame, with version 2.1, it changed to ''<code>/PSTD</code>''. |

+ | |||

+ | For example if you want frame 100 of domain 4, the 5th domain, the data element is at ''<code>/PSTD/4/100</code>''. Or if you want the data of receiver 6, that is the 7th receiver, then the resulting data is in element ''<code>/receiver/6</code>''. | ||

= Applications = | = Applications = | ||

Line 19: | Line 23: | ||

==Matlab== | ==Matlab== | ||

Matlab can import the data. This can be done by the following command: | Matlab can import the data. This can be done by the following command: | ||

− | ''<code>h5read(filename,datasetname)</code>'' where file name is the hdf5 file name and the datasetname is the data set name, eg ''<code>/ | + | ''<code>h5read(filename,datasetname)</code>'' where file name is the hdf5 file name and the datasetname is the data set name, eg ''<code>/PSTD/4/100</code>'' or ''<code>/receiver/6</code>''. For example to read frame 42 from domain 4 that is in hdf5 file "result.h5", the following matlab command can be used ''<code>h5read('result.h5','/PSTD/4/42')</code>''. |

For more info see [http://mathworks.com/help/matlab/hdf5-files.html Matlab hdf5 reference pages]. There are also functions that can query the file. The file can be queried for which domains are in it, which frames of each domain and which receivers are in it. | For more info see [http://mathworks.com/help/matlab/hdf5-files.html Matlab hdf5 reference pages]. There are also functions that can query the file. The file can be queried for which domains are in it, which frames of each domain and which receivers are in it. |

## Revision as of 11:03, 30 January 2017

Data exported to the HDF5 format can be imported into other applications.

## Contents |

# Exported HDF5 file

The exported file is an HDF5 file. More information about this format can be found here.

The structure of the HDF5 format is a tree-like structure with data elements as leaves, which are called data sets. All the indices start from 0. This structure is as follows:

`PSTD`

- <domain index>
- <frame index>

- <domain index>
since version 2.1`DG`

- <frame index>

`receiver`

- <receiver index>

Version 2.0 used /frame, with version 2.1, it changed to * /PSTD*.

For example if you want frame 100 of domain 4, the 5th domain, the data element is at * /PSTD/4/100*. Or if you want the data of receiver 6, that is the 7th receiver, then the resulting data is in element

*.*

`/receiver/6`

# Applications

Here is a list of some of the applications that can import this data.

## Matlab

Matlab can import the data. This can be done by the following command:
* h5read(filename,datasetname)* where file name is the hdf5 file name and the datasetname is the data set name, eg

*or*

`/PSTD/4/100`

*. For example to read frame 42 from domain 4 that is in hdf5 file "result.h5", the following matlab command can be used*

`/receiver/6`

*.*

`h5read('result.h5','/PSTD/4/42')`

For more info see Matlab hdf5 reference pages. There are also functions that can query the file. The file can be queried for which domains are in it, which frames of each domain and which receivers are in it.

## Mathematica

More information about import in mathematica can be found at Mathematica hdf5 reference pages.

## Python

Python has also an interface to HDF5. This interface can be found at h5py.org

## R

R has also an interface to the HDF5 format. This interface can be found at the CRAN repo. [1]