CRT – dust model

Dust for calculations of scattered light

The program CRT uses different types of dust models. The simplest dust models are used for calculations of scattered light and they do not include calculation of dust temperatures or dust emission. These dust models can be specified entirely using a text file, e.g.:

simple # required !
# number density relative to hydrogen
# grain radius [cm]
# number of frequencies
# [ freq g=<cos theta> Qabs Qscat ]
1e10 0.6 2.0 0.0
1e11 0.6 2.0 0.0
1e12 0.6 2.0 0.0
1e13 0.6 2.0 0.0
1e14 0.5 2.0 0.0
1e15 0.6 2.0 0.0
1e16 0.6 2.0 0.0

The name of the above file is then set in the ini-file using the keyword dust. The file starts with the keyword simple and is followed by the grain abundance and grain radius (used for computation of absorption and scattering cross sections). These are followed by the number of frequencies for which the dust parameters are defined. Each of the following lines list a frequency, and for that frequency the value of the asymmetry parameter g and the absorption and scattering efficiencies, Q~abs~ and Q~scat~.

A single dust species with an equilibrium temperature

For this dust in each cell an equilibrium temperature is calculated and, consequently, dust emission spectrum can be calculated. The dust definition is contained entirely in an external text file. Here is an example:

eqdust # required
1.0e-11 # abundance
0.12e-4 # grain radius [cm]
# frequencies
1.4979e+11 0.000 1.1380e-05 2.0100e-13
2.0079e+11 0.000 1.3380e-05 3.0100e-13
2.9979e+11 0.000 1.5380e-05 4.0100e-13
3.1754e+11 0.000 1.7260e-05 5.0480e-13
3.3635e+11 0.000 1.9360e-05 6.3550e-13
3.5630e+11 0.000 2.1730e-05 8.0000e-13

The format is the same as for the ‘simple’. In the ini-file the keyword frequencyfile points to a file that lists the actual frequencies used in the calculations and dust parameters are interpolated to those frequencies. Obviously, the definition of dust parameters should cover the whole computed frequency range.

Dust with a size distribution but grains at an equilibrium temperature

So far we have not have any need for such dust models. In an ini-file one can include at least ten different dust species so that a crude size distribution can be implemented using several ‘eqdust’ dust species.

Transiently heated grains

For transiently heated particles some grain properties are currently hardwired in the code. Therefore, it is only possible to use some pre-defined dust models. One of these is the Li & Draine model (2001). The dust file is specified in the normal manner using the dust keyword. Here is an example

prefix june_ldg
dt 1.0e-6
density 1.0e-11
nsize -10 50.0e-8 2400.0e-8
bins 250 70.0 450.0

The keywords in this file are:

  • set_ld_graphite= Li & Draine (‘ld’) graphite grains; other possibilities include set_ld_silicate and set_ld_pah
  • prefix = prefix for file names used in output and some auxiliary files
  • dt = time interval used in the solution of temperature distributions (exact value is unimportant but a bad choice can increase run times or lead to numerical instability)
  • density = grain density relative to hydrogen
  • nsize = number of separate grain size intervals; here 10 bins between 50e-8 and 2500e-8 cm
  • bind = number of temperature bins: 250 intervals; upper limit 70K for the largest and 450K for the smallest grains
    Dust is now discretized into separate size intervals and for each size interval and cell we have a separate distribution of dust temperatures. The computations are much more time-consuming than when one could assume a single equilibrium temperature. Note that absorption and scattering cross sections are read directly from files downloaded from B. Draine’s homepage. These must be available when program is run, and are usually located in a directory specified at compile time. However, the name of the directory can also be set in the ini-file using the keyword rootdir.

Modifications of the original model ====

The original (hard coded) model for transiently heated particles can be adjusted in several ways.

  • adjust has two parameters, first scales the number grain density calculated from the original model, the second argument tilts the size spectrum (on logarithmic scale)

adjust 0.7 0.2

The previous decreases the total dust mass (for the present component) by 30% and makes the slope (dN vs grain size) more shallow, i.e., increases the relative amount of large grains.

  • auxfile instructs the program to read a file [um Qabs], that will be used to replace the original absorption curve (between some frequencies)

auxfile file.dat
tag A

The tag specifies the interval replaced (Qabs replaced directly, Qsca multiplied with Qsca_new/Qsca_old). For example, tag A stands for interval 7.6-25µm.

  • growth tells the program to read a separate file containing columns [ grain_size [nm], factor ] that is used to modify the original grain size distribution. The second parameter defines the change in total dust mass.

growth curve.txt 2.0

The previous line means, that the original grain numbers (per size interval) are multiplied with the factors found in the file curve.txt. The final grain numbers are normalized so that the total dust mass is twice the original one.

  • emissivity_step has three parameters

emissivity_step 10.0 100.0 2.0

The previous line means: increase emissivity for all grains larger than 10nm, for all wavelengths above 100um, by a constant factor 2.0.

  • emissivity_slope has three parameters

emissivity_slope 10.0 100.0 2.0

The previous line means: increase emissivity for all grains larger than 10nm, for all wavelengths above 100um, by a factor (lambda/lambda~0)2.0.

  • emissivity_bump a dlog(a) k(size) scale lambda dlg(lambda) k(emissivity). This introduces into the size distribution a bump, the centre is at given grain size a [nm], the width of the bump is specified on logarithmic scale by dlog(a){{, {{k is the peak multiplicative increase in the grain numbers, scale is the scaling of the total dust mass, lambda is the bump centre in wavelength [um], and dlg(lambda) the width on logarithmic scale. The last parameter is the peak multiplication at wavelength lambda.

emissivity_bump 100.0 2.0 1.4 1.0 300.0 2.1 4.0

The previous line would increase number of grains around 100nm by a maximum factor of two. The bump is gaussian on logarithmic scale, the standard deviation of log(a) being 1.4. The total dust mass is kept constant. Emissivity is increased by a maximum factor of four around 300um. The width
of the bump corresponds to log(lambda) standard deviation of 2.1.

  • multiplysize moves the whole size distribution without affecting the (dN,a) slope.

multiplysize 2.0

The previous line would increase the size of all particles by a factor of two.

Transiently heated particles defined in external file

This is not yet implemented, would require only a little effort and would make the program much more flexible. Current limitation to a few dust models (e.g., the previous Li & Draine model) results from the fact that specific heats and (in some cases) asymmetry parameters and absorption and scattering cross sections are computed from analytical formulas. It would be a simple matter to replace these with ascii files. After all, a dust model is fully specified by curves of (1) specific heat as the function of temperature, (2) g, Q~abs~, and Q~scat~ as the function of frequency, and (3) number of grains as the function of grain size.