Dust HDF5 Format#
Overview#
Hyperion requires information on the dust properties, such as the albedo, opacity, mean opacities, and emissivities. These need to be packaged in an HDF5 format that is described below. In most cases you do not need to create these files from scratch, and you can instead use the Hyperion Python library to produce these (see Preparing dust properties). If however you want to write the files directly without the Python library, this section is for you!
Dust file HDF5 format specification#
An HDF5 dust file should contain 5 datasets. The root of the file should contain the following attributes:
emissvar
: whether the emissivity is specified as a function of specific energy absorbed in each cell (E
) or another quantity (but this is not supported at this time).version
: this should be set to1
- the version described in this section.type
: the dust file type. At the moment, the only kind of dust file supported is one giving the four unique elements of the scattering matrix of dust as a function of scattering angle (1
). In future, other types of dust, such as aligned grains, which require the full 16 elements, will be implemented.lte
: whether the dust emissivities assume local thermodynamic equilibrium (LTE).python_version
: the version of the Python Hyperion library used to generate the file. Set this to ‘0.8.7’ if you are writing files yourself rather than using the Hyperion library.
The datasets present should be the following:
optical_properties
#
This dataset should consist of a table with the basic optical properties of the dust as a function of frequency, in a binary table. The columns should be:
nu
: The frequency, in Hz.albedo
: The albedo of the dust.chi
: The opacity of the dust to extinction, in cm^2/g.P1
,P2
,P3
, andP4
: The four elements of the scattering matrix. These columns should be vector columns, with each table cell containing the elements for as many angles as specified inscattering_angles
.
scattering_angles
#
This dataset should consist of a single-column table. The column should be
mu
, and should give the values of the cosine of the scattering angle for
which the matrix elements are tabulated in the Optical properties
dataset.
mean_opacities
#
This dataset should consist of a table with pre-computed mean opacities for the dust. The columns should be:
specific energy
: The specific energy for which the mean opacities are givenchi_planck
: The Plank mean opacity to extinction, in cm^2/gchi_rosseland
: The Rosseland mean opacity to extinction, in cm^2/gkappa_planck
: The Plank mean opacity to absorption, in cm^2/gkappa_rosseland
: The Rosseland mean opacity to absorption, in cm^2/g
The temperatures specified should range from 0.1K (or less) to a temperature safely above the maximum temperature expected for the dust in the system.
emissivities
#
This dataset should consist of a table specifying the emissivities. The columns should be:
nu
: The frequencies at which the emissivity is specified.j_nu
: The emissivity for the specified frequency, as a function of specific energy. This should be a vector column, where the width of the column is the number of values specified in theemissivity_variable
dataset.
emissivity_variable
#
This dataset should consist of a single-column table. The column should be
specific_energy
and should give the specific energies for which the
emissivities are tabulated in the emissivities
dataset.