Xdust documentation¶
The xdust library calculates scattering and absorption efficiencies for dust from the infrared to the X-ray. It has special capabilities to calculate dust scattering halo images in the X-ray.
First published version of this code (released with Corrales & Paerels, 2015) http://dx.doi.org/10.5281/zenodo.15991
Source code: github.com/eblur/xdust
Support: If you are having issues, please contact liac@umich.edu
Features¶
A number of dust grain size distributions and optical constants are provided, but they can be fully customized by the user by invoking custom objects of the approporiate class. Provided dust models include:
Grain size distributions: single grain size, power law, and a power law with an exponential cut-off
Weingartner & Draine (2001) grain size distributions for Milky Way dust
The new Hensley & Draine (2022) Astrodust size distribution (assuming spherical grains)
Optical constants (complex index of refraction) for 0.1 um sized graphite and astrosilicate grains
Rayleigh-Gans scattering physics following:
Mie scattering physics using the algorithms of Bohren & Huffman (1986) converted from fortran and IDL to python
Grain Populations¶
At the top level, Xdust uses the SingleGrainPop object to
model a population of dust grains based on three distinct properties:
the grain size distribution (see
xdust.graindist.sizedist)composition type specifying the optical constants (see
xdust.graindist.composition)the scattering physics model (see
xdust.scatteringmodel)
Furthermore, the GrainPop object contains a list of SingleGrainPop objects, which can be called upon using keys, like a dictionary. Keys have to be specified when the GrainPop object is initialized.
For example, when the xdust.make_MRN function is called, it will return a
GrainPop object with the keys ‘sil’ for the silicate grain size distribution,
‘gra_para’ for the graphitic grains with monomers parallel to the light wave propagation,
and ‘gra_perp’ for the graphitic grains with monomers perpendicular to the light wave propagation.
See the xdust.grainpop module for more information.
X-ray Scattering Halos¶
The xdust.halos module provides tools for calculating the intensity of
X-ray dust scattering halos under the ideal assumptions of single-scattering
through an optically thin sight line (Corrales & Paerels 2015, Corrales et al. 2016).