This HTML file was generated from the TeX source by the translator TTH, which uses symbol fonts. These fonts are not normally enabled for Netscape running under X, because of the way Netscape groups its fonts. If your browser has problems displaying the math symbols in this manual, an easy fix can be found on the TTH website at http://hutchinson.belmont.ma.us/tth/Xfonts.html
DUSTY has built in optical properties for the most common types of astronomical dust and comes with a library for many other grains. It supports various analytical forms for the density distribution, and can perform a full dynamical calculation for radiatively driven winds around AGB stars. The spectral energy distribution of the source can be specified analytically as either Planckian or broken power-law. In addition, arbitrary dust optical properties, density distributions and external radiation can be entered in user supplied files. Furthermore, the wavelength grid can be modified to accommodate spectral features. A single DUSTY run can process an unlimited number of models, with each input set producing a run of optical depths, as specified. The user controls the detail level of the output, which can include both spectral and imaging properties as well as other quantities of interest.
This code is copywrited, 1996-99 by Moshe Elitzur, and may not be copied without acknowledging its origin. Use of this code is not restricted, provided that acknowledgement is made in each publication. The bibliographic reference to this version of DUSTY is Ivezic, Z., Nenkova, M. & Elitzur, M., 1999, User Manual for DUSTY, University of Kentucky Internal Report, accessible at http://www.pa.uky.edu/ ~ moshe/dusty.
Make sure that you have the current version, with the latest options and problem fixes, by checking the DUSTY Web site. To be automatically notified of these changes, ask to be placed on the DUSTY mailing list by sending an e-mail to moshe AT pa dot uky dot edu.
The code DUSTY was developed at the University of Kentucky by Zeljko Ivezic, Maia Nenkova and Moshe Elitzur for a commonly encountered astrophysical problem: radiation from some source (star, galactic nucleus, etc.) viewed after processing by a dusty region. The original radiation is scattered, absorbed and reemitted by the dust, and the emerging processed spectrum often provides the only available information about the embedded object. DUSTY can handle both planar and centrally-heated spherical density distributions. The solution is obtained through an integral equation for the spectral energy density, introduced in . The number of independent input model parameters is minimized by fully implementing the scaling properties of the radiative transfer problem, and the spatial temperature profile is found from radiative equilibrium at every point in the dusty region.
On a Convex Exemplar machine, the solution for spherical geometry is produced in a minute or less for visual optical depth tV up to ~ 10, increasing to 5-10 min for tV higher than 100. In extreme cases (tV ~ 1000) the run time may reach 30 min or more. Run times for the slab case are typically five times shorter. All run times are approximately twice as long on a 300 MHz Pentium PC.
The purpose of this manual is to help users get quickly acquainted with the code. Following a short description of the installation procedure (§2), the input and output are described in full for the spherical case in §3 and §4. All changes pertaining to the plane-parallel case are described separately in §5. Finally, §6 describes user control of DUSTY itself.
This new version of DUSTY is significantly faster than its previous public release. Because of the addition of many features, the structure of the input has changed and old input files will not run on the current version.
The FORTRAN source dusty.f along with additional files, including five sample input files, come in a single compressed file dusty.tar.gz. This file and its unpacking instructions are available at DUSTY's homepage at http://www.pa.uky.edu/ ~ moshe/dusty. Alternatively, anonymous ftp gradj.pa.uky.edu, cd dusty/distribution and retrieve all files and sub-directories.
DUSTY was developed on a Pentium PC and has been run also on a variety of Unix workstations. It is written in standard FORTRAN 77, and producing the executable file is rather straightforward. For example, on a Unix machine
f77 dusty.f -o dusty
If the compilation is successful you can immediately proceed to run DUSTY without any further action. It should produce the output files sphere1.out and slab1.out, printed in appendices C and D, respectively. On a 300 MHz Pentium PC with DUSTY compiled by Visual FORTRAN under Windows, these files are produced in just under 2 minutes. Execution times under Linux are roughly three times longer; the Linux/FORTRAN implementation on the Digital alpha machine appears to be especially poor, the execution may be as much as ten times longer. Execution times on SUN workstations vary greatly with the model: about 1:30 min on an Enterprise 3000, 3 min on SPARC Ultra 1 and 6 min on SPARC20. These run-times should provide an indication of what to expect on your machine. If DUSTY compiles properly but the execution seems to be going nowhere and the output is not produced in the expected time, in all likelihood the problem reflects insufficient amount of machine memory. As a first measure, try to close all programs with heavy demand on system resources, such as ghostview and Netscape, before running DUSTY. If this does not help, the problem may be alleviated by reducing DUSTY's memory requirements. Section 6.1 describes how to do that.
A single DUSTY run can process an unlimited number of models. To accomplish this, DUSTY's input is always the master input file dusty.inp2, which lists the names of the actual input files for all models. These filenames must have the form fname.inp, where fname is arbitrary and can include a full path, so that a single run may produce output models in different directories. In dusty.inp, each input filename must be listed on a separate line, with the implied extension .inp omitted. Since FORTRAN requires termination of input records with a carriage return, make sure you press the ``Enter" key after every filename you enter, especially if it is in the last line of dusty.inp. Empty lines are ignored, as is all text following the `%' sign (as in TEX). This enables you to enter comments and conveniently switch on and off the running of any particular model. The sample dusty.inp, supplied with the program, points to the five actual input files sphereN.inp (N = 1-3) and slabM.inp (M = 1, 2). Only sphere1 and slab1 will be executed, since the others are commented out, providing samples of DUSTY's simplest possible input and output. Once they have been successfully run you may wish to remove the `%' signs from the other entries, which demonstrate more elaborate input and output, and check the running of a full sequence. Your output can be verified against the corresponding sample output files accessible on DUSTY's homepage.
Each model is characterized by properties of the radiation source and the dusty region, and DUSTY produces a set of up to 999 solutions for all the optical depths specified in the input. The output file for fname.inp is fname.out, containing a summary of the run and a table of the main output results. Additional output files containing more detailed tables of radiative and radial properties may be optionally produced.
The input file has a free format, text and empty lines can be entered arbitrarily. All lines that start with the `*' sign are echoed in the output, and can be used to print out notes and comments. This option can also be useful when the program fails for some mysterious reason and you want to compare its output with an exact copy of the input line as it was read in before processing by DUSTY. The occurrence of relevant numerical input, which is entered in standard FORTRAN conventions, is flagged by the equal sign `='. The only restrictions are that all required input entries must be specified, and in the correct order; the most likely source of an input error is failure to comply with these requirements. Recall, also, that FORTRAN requires a carriage return termination of the file's last line if it contains relevant input. Single entries are always preceded by the equal sign, `=', and terminated by a blank, which can be optionally preceded with a punctuation mark. For example: T = 10,000 K as well as Temperature = 1.E4 degrees and simply = 10000.00 are all equivalent, legal input entries (note that comma separations of long numbers are permitted). Some input is entered as a list, in which case the first member is preceded by `=' and each subsequent member must be preceded by a blank (an optional punctuation can be entered before the blank for additional separation); for example, Temperatures = 1E4, 2E4 30,000. Because of the special role of `=' as a flag for input entry, care must be taken not to introduce any `=' except when required. All text following the `%' sign is ignored (as in TEX) and this can be used to comment out material that includes `=' signs. For example, different options for the same physical property may require a different number of input entries. By commenting out with `%', all options may be retained in the input file with only the relevant one switched on.
The input contains three types of data - physical parameters, numerical accuracy parameters, and flags for optional output files. The physical parameters include characteristics of the external radiation, properties of the dust grains, and the envelope density distribution. Detailed description of the program input follows, including examples marked with the `·' sign. Each example contains a brief explanation, followed by sample text typeset in typewriter font as it would appear in the input file. The sample input files sphereN.inp and slabM.inp, supplied with DUSTY, are heavily commented to ease initial use, and can be used as templates.
In the spherical case, DUSTY assumes that the external radiation comes from a point source at the center of the density distribution. Thanks to scale invariance, the only relevant property of the external radiation under these circumstances is its spectral shape (see ). Six different flag selected input options are available. The first three involve entry in analytical form:
Spectrum = 1 Number of BB = 1 Temperature = 10,000 K
This could also be entered on a single line as
type = 1, N = 1, T = 1E4
Spectrum = 1 Number of BB = 2 Temperatures = 10,000, 2,500 K Luminosities = 4, 1
Spectrum = 2 Temperature = 2500 K SiO absorption depth = 10 percents
In this case, after the option selection the number N is entered, followed by a list of the break points l(i), i = 1... N+1, in mm and a list of the power indices k(i), i = 1... N. The wavelengths l(i) must be listed in increasing order.
Spectrum = 3 N = 1 lambda = 0.1, 1 micron k = 0All spectral points entered outside the range covered by DUSTY's wavelength grid are ignored. If the input spectrum does not cover the entire wavelength range, all undefined points are assumed zero.
Stellar spectrum tabulated in a file. The filename for the input spectrum must be entered separately in the line following the numerical flag. This input file must have a three-line header of arbitrary text followed by a two-column tabulation of l and lFl, where l is in mm and lFl is in arbitrary units. The number of entry data points is limited to a maximum of 10,000 but is otherwise arbitrary. The tabulation must be ordered in wavelength but the order can be either ascending or descending. If the shortest tabulated wavelength is longer than 0.01 mm, the external flux is assumed to vanish at all shorter wavelengths. If the longest tabulated wavelength is shorter than 3.6 cm, DUSTY will extrapolate the rest of the spectrum with a Rayleigh-Jeans tail.
Spectrum = 4
Spectrum = 5
In the last three entry options, the filename for the input spectrum must be entered separately in the line following the numerical flag. Optionally, you may separate the flag line and the filename line by an arbitrary number of lines that are either empty or commented out (starting with `%'). The files quasar.dat and kurucz10.dat are distributed with DUSTY.
Dust optical properties are described by the dust absorption and scattering cross-sections, which depend on the grain size and material. Currently, DUSTY supports only single-type grains, namely, a single size and chemical composition. Grain mixtures can still be treated, simulated by a single-type grain constructed from an appropriate average. This approximation will be removed in future releases which will provide full treatment of grain mixtures.
DUSTY contains data for the optical properties of six common grain types. In models that utilize these standard properties, the only input required is the fractional abundance of the relevant grains. In addition, optical properties for other grains can be supplied by the user. In this case, the user can either specify directly the absorption and scattering coefficients or have DUSTY calculate them from provided index of refraction. The various alternatives are selected by a flag, as follows:
optical properties index = 1 Abundances for supported grain types, standard ISM mixture: Sil-Ow Sil-Oc Sil-DL grf-DL amC-Hn SiC-Pg x = 0.00 0.00 0.53 0.47 0.00 0.00
The overall abundance normalization is arbitrary. In this example, the silicate and graphite abundances could have been entered equivalently as 53 and 47, respectively.
Optical properties index = 2 Abundances of built-in grain types: Sil-Ow Sil-Oc Sil-DL grf-DL amC-Hn SiC-Pg x = 0.00 0.00 0.00 0.22 0.00 0.00 Number of additional components = 3, properties listed in files amC-zb1.nk amC-zb2.nk amC-zb3.nk Abundances for these components = 0.45, 0.10, .23
Optical properties index = 3; cross-sections entered in file
The grain size distribution must be specified only when the previous option was set to 1 or 2. When the dust cross sections are read from a file (previous option set at 3), the present option is skipped.
DUSTY recognizes two distribution functions for grain sizes n(a) - the MRN  power-law with sharp boundaries
Size distribution = 2
q = 3.5, a(min) = 0.005 micron, a(max) = 0.25 micron
Size distribution = 2 q = 0 (it is irrelevant in this case) a(min) = 0.05 micron a(max) = 0.05 micron
The next input entry is the dust temperature T1 (in K) on the shell inner boundary. This is the only dimensional input required by the dust radiative transfer problem . T1 uniquely determines Fe1, the external flux entering the shell, which is listed in DUSTY's output (see § 4.1). In principle, different types of grains can have different temperatures at the same location. However, DUSTY currently treats mixtures as single-type grains whose properties average the actual mix. Therefore, only one temperature is specified.
In spherical geometry, the density distribution is specified in terms of the scaled radius
DUSTY provides three methods for entering the spherical density distribution: prescribed analytical forms, hydrodynamic calculation of winds driven by radiation pressure on dust particles, and numerical tabulation in a file.
DUSTY can handle three types of analytical profiles: piecewise power-law, exponential, and an analytic approximation for radiatively driven winds. The last option is described in the next subsection on winds.
density type = 1; N = 1; Y = 1.e3; p = 2
density type = 1 N = 3 transition radii = 10 100 1000 power indices = 2 1 0
density type = 2; Y = 100; sigma = 4
The density distribution options 3 and 4 are offered for the modeling of objects such as AGB stars, where the envelope expansion is driven by radiation pressure on the dust grains. DUSTY can compute the wind structure by solving the hydrodynamics equations, including dust drift and the star's gravitational attraction, as a set coupled to radiative transfer. This solution is triggered with density type = 3, while density type = 4 utilizes an analytic approximation for the dust density profile which is appropriate in most cases and offers the advantage of a much shorter run time.
density type = 3; Y = 1.e4
The steepness of the density profile near the wind origin increases with optical depth, and with it the numerical difficulties. DUSTY handles the full dynamics calculation for models that have tV < ~ 1,000, corresponding to Mdot ~ 4×10-4 Mo yr-1.
density type = 4; Y = 1.e4
Run times for this option are typically 2-3 times shorter and it can handle larger optical depths than the previous one. Although this option suffices for the majority of cases of interest, for detailed final fitting you may wish to switch to the former.
Arbitrary density profiles can be entered in tabulated form in a file. The tabulation could be imported from another dynamical calculation (e.g., star formation), and DUSTY would produce the corresponding IR spectrum.
density type = 5; profile supplied in the file: collapse.dat
This file is supplied with DUSTY and contains tabulation of the profile h µ y-3/2, corresponding to steady-state accretion to a central mass.
For a given set of the parameters specified above, DUSTY will generate up to 999 models with different overall optical depths. The list of optical depths can be specified in two different ways. DUSTY can generate a grid of optical depths spaced either linearly or logarithmically between two end-points specified in the input. Alternatively, an arbitrary list can be entered in a file.
tau grid = 1 lambda0 = 2.2 micron tau(min) = 1; tau(max) = 100 number of models = 100
tau grid = 2 lambda0 = 0.55 micron tau(min) = 0.1; tau(max) = 10 number of models = 3
tau grid = 3; grid supplied in file: taugrid.datThe file taugrid.dat is used in the sample input files slab2.inp and sphere3.inp.
The numerical accuracy and convergence of DUSTY's calculations are controlled by the next input parameter, qacc. The accuracy is closely related to the set of spatial and wavelength grids employed by DUSTY. The wavelength grid can be modified by users to meet their specific needs (see §6.2) and it does not change during execution. The spatial grids are automatically generated and refined until the fractional error of flux conservation at every grid point is less than qacc. Whenever DUSTY calculates also the density profile h, the numerical accuracy of that calculation is also controlled by qacc.
The recommended value is qacc = 0.05, entered in all the sample input files. The accuracy level that can be accomplished is related to the number of spatial grid points and the model's overall optical depth. When tV < ~ 100, fewer than 30 points will usually produce a flux error of < ~ 1% already in the first iteration. However, as tV increases, the solution accuracy decreases if the grid is unchanged, and finer grids are required to maintain a constant level of accuracy. This is done automatically by DUSTY. The maximum number of grid points is bound by DUSTY's array dimensions, which are controlled by the parameter npY whose default value is 40. This internal limit suffices to ensure convergence at the 5% level for most models with tV < ~ 1000.3 If higher levels of accuracy or larger tV are needed, DUSTY's internal limits on array sizes must be expanded by increasing npY, as described in §6.1.
The final input entries control DUSTY's output. The first is a flag that sets the level of DUSTY's verbosity during execution. With verbose = 1, DUSTY will output to the screen a minimal progress report of its execution. With verbose = 2 you get a more detailed report that allows tracing in case of execution problems. verbose = 0 suppresses all messages. The messages are printed to the standard output device with the FORTRAN statement write(*). If you suspect that your system may not handle this properly, choose verbose = 0.
All other output and its control is explained in the next section. Note again that this section describes only the output for spherical models. All changes necessitated by the planar geometry are described separately in §.
A typical DUSTY run generates an enormous amount of information, and the volume of output can easily get out of hand. To avoid that, DUSTY's default output is a single file that lists only minimal information about the run, as described next. All other output is optional and fully controlled by the user. §4.2 describes the optional output and its control.
DUSTY always produces the output file fname.out for each model input fname.inp. In addition to a summary of the input parameters, the default output file tabulates global properties for each of the optical depths covered in the run. The table's left column lists the sequential number ### of the model with the fiducial optical depth tau0 listed in the next column. Subsequent columns list quantities calculated by DUSTY for that tau0:
Any measure of the shell dimension is irrelevant to the radiative transfer problem and thus not part of DUSTY's calculations. Still, the shell size can be of considerable interest in many applications. For convenience, the next three output items list different measures of the shell size expressed in terms of redundant quantities such as the luminosity:
When the density distribution is derived from a hydrodynamics calculation for AGB winds (§3.3.2), three more columns are added to fname.out listing the derived mass-loss rate, terminal outflow velocity and an upper bound on the stellar mass. These quantities posses general scaling properties in terms of the luminosity L, gas-to-dust mass ratio rgd and dust grain bulk density rs . The tabulations are for L = 104 Lo, rgd = 200 and rs = 3 g cm-3, and their scaling properties are:
Finally, DUSTY assumes that the external radiation originates in a central point source. This assumption can be tested with eqs. (27) and (28) of  which give expressions for the central source angular size and occultation effect. From these it follows that the error introduced by the point-source assumption is no worse than 6% whenever
Black-body emission provides an absolute upper bound on the intensity of any thermal source. Therefore, input radiation whose spectral shape is the Planck function at temperature T is subject to the limit Te £ T even though Te is arbitrary in principle. In such cases T must comply with eq. 5, otherwise DUSTY's output is suspect and in fact could be meaningless. DUSTY issues a stern warning after the tabulation line of any model with input spectral shape that is either the Planck or Engelke-Marengo function whose temperature violates eq. 5.
In addition to the default output, the user can obtain numerous tabulations of spectra, imaging profiles and radial distributions of various quantities of interest for each of the optical depths included in the run. This additional output is controlled through flags entered at the end of the input file fname.inp that turn on and off the optional tabulations. Setting all flags to 0, as in sphere1.inp and slab1.inp, suppresses all optional tabulations and results in minimal output. A non-zero output flag triggers the production of corresponding output, occasionally requiring additional input. Further user control is provided by the value of the output flag. When a certain flag is set to 1, the corresponding output is listed in a single file that contains the tabulations for all the optical depth solutions. Setting the flag to 2 splits the output, when appropriate, tabulating the solution for each optical depth in its own separate file. This may make it more convenient for plotting purposes, for example, at the price of many small files. A few flags can also be set to 3, splitting the output even further.
Each of the following subsections describes in detail the optional tabulations triggered by one of the output flags and any additional input it may require. Appendix A summarizes all the output flags and the corresponding output files they trigger, and can be used for quick reference.
Setting the first optional flag to 1 outputs a variety of spectral properties for all the model solutions to the file fname.spp. The tabulation has four header lines and starts with the model sequential number ###. The following columns list the corresponding tau0 and the scaling parameter Y (see ) for the model. The subsequent columns list fluxes f(l) = lFl/F, where F = òFldl, for various wavelengths of interest:
Next are the IRAS colors, defined for wavelengths l1 and l2 in mm as:
The next output flag triggers listing of detailed spectra for each model in the run. Setting this flag to 1 produces tables for the emerging spectra of all models in the single output file fname.stb. Setting the flag to 2 places each table in its own separate file, where file fname.s### contains the tabulation for model number ### in the optical depth sequence listed in the default output file (§4.1).
In addition to the emerging spectrum, the table for each model lists separately the contributions of various components to the overall flux, the spectral shape of the input radiation, and the wavelength dependence of the total optical depth. The following quantities are tabulated:
The surface brightness is a luminosity-independent self-similar distribution  of b/r1, the impact parameter scaled by the envelope inner radius (fig. 1); note that r1 is listed in the default output file (§4.1) for a source luminosity 104 Lo. DUSTY can produce maps of the surface brightness at up to 20 wavelengths, specified in the input file. Setting the option flag to 1 produces imaging tabulations for all the models of the run in the single output file fname.itb, setting the flag to 2 puts the table for model number ### in its separate file fname.i###.
Following the option selection flag, the number ( £ 20) of desired wavelengths is entered first, followed by a list of these wavelengths in mm.
imaging tables (all models in one file) = 1 number of wavelengths = 8 wavelengths = 0.55, 1.0, 2.2, 4, 10, 50, 100, 1000 micron
Whenever a specified wavelength is not part of DUSTY's grid, the corresponding image is obtained by linear interpolation from the neighboring wavelengths in the grid. If the nearest wavelengths are not sufficiently close, the interpolation errors can be substantial. For accurate modeling, all wavelengths specified for imaging should be part of the grid, modifying it if necessary (see §6.2).
Each map is tabulated with a single header line as follows:
A typical image contains a narrow central spike of width bc = 2rc/r1, where rc is the radius of the central source . Since this feature is unresolved in most observations, it is usually of limited interest. This spike is the only feature of the emerging intensity that depends on the effective temperature Te of the central source, which is irrelevant to DUSTY's calculations. The width of the spike scales in proportion to Te-2, its height in proportion to Te4. The listed value is for Te = 10,000 K with two exceptions: when the spectral shape of the external radiation is the Planck or Engelke-Marengo function, the arguments of those functions are used for Te.
Visibility is the two-dimensional spatial Fourier transform of the surface brightness distribution (for definition and discussion see ). Since the surface brightness is a self-similar function of b/r1, the visibility is a self-similar function of qq1 where q is the spatial frequency, q1 = 2r1/D and D is the distance to the source; note that q1 is listed in the default output file for the location where Fobs = 10-6 W m-2 (§4.1).
When imaging tables are produced, DUSTY can calculate from them the corresponding visibility functions. The only required input is the flag triggering this option; if images are not requested in the first place, this entry is skipped. When the visibility option flag is different from zero, it must be the same as the one for imaging. Setting both flags to 1 will add visibility tables for all models to the single file fname.itb. Setting the flags to 2 puts the imaging and visibility tables of each model in the separate file fname.i###, setting them to 3 further splits the output by putting each visibility table in the separate, additional file fname.v###.
Each visibility table starts with a single header line, which lists the specified wavelengths in the order they were entered. The first column lists the dimensionless scaled spatial frequency q = qq1 and is followed by the visibility tabulation for the various wavelengths.
The next option flag triggers tabulations of the radial profiles of the density, optical depth and dust temperature. Setting the flag to 1 produces tabulations for all the models of the run in the single output file fname.rtb, setting the flag to 2 places the table for model number ### in its own separate file fname.r###. The tabulated quantities are:
In case of an error, the default output file issues a warning. Optionally, additional, more detailed run-time error messages can be produced and might prove useful in tracing the program's progress in case of a failure. Setting the corresponding flag to 1 produces messages for all the models in the single output file fname.mtb, setting the flag to 2 puts the messages for model number ### in its own separate file fname.m###.
DUSTY offers the option of calculating radiative transfer through a plane-parallel dusty slab. The slab is always illuminated from the left, additional illumination from the right is optional.
As long as the surfaces of equal density are parallel to the slab boundaries, the density profile is irrelevant: location in the slab is uniquely specified by the optical depth from the left surface. Unlike the spherical case, there is no reference to spatial variables since the problem can be solved fully in optical-depth space. The other major difference involves the bolometric flux F. In the spherical case the diffuse flux vanishes at y = 1 and F = Fe1/y2, where Fe1 is the external bolometric flux at the shell inner boundary . In contrast, F is constant in the slab and the diffuse flux does not vanish on either face. Therefore F/Fe1, where Fe1 is the bolometric flux of the left-side source at slab entry, is another unknown variable determined by the solution.
The slab geometry is selected by specifying density type = 0. The dust properties are entered as in the spherical case, with the dust temperature specified on the slab left surface instead of the shell inner boundary. The range of optical depths, too, is chosen as in the spherical case. The only changes from the spherical case involve the external radiation and the output.
External radiation is incident from the left side. The presence of an optional right-side source is specified by a non-zero value for R, the ratio of the right-side bolometric flux at slab entry to that of the left-side source. Each input radiation is characterized by its spectral shape, which is entered exactly as in the spherical case (§3.1), and angular distribution. The only angular distributions that do not break the planar symmetry involve parallel rays, falling at some incident angle, and isotropic radiation (see figure 2). The parallel-rays distribution is specified by the cosine ( > 0.05) of the illumination angle, the isotropic distribution is selected by setting this input parameter to -1. Since oblique angles effectively increase the slab optical depth, run-times will increase with incidence angle.
density type = 0 cos(angle) = 1.0 (spectral shape entered previously) R = 0 (no source on the right)
Two-sided illumination is specified by a non-zero R, where 0 < R £ 1. The properties of the right-side source are specified following the input for R.
density type = 0 cos(angle) = -1.0 (spectral shape entered previously) R = 0.5 Properties of the right-side source: cos(angle) = 0.5 Spectrum = 1; N = 1; Tbb = 3000 K
The output-control flags are identical to those in the spherical case and the output files are analogous, except for some changes dictated by the different geometry.
Similar to the fTot column of the spherical case, the spectral shape of the right-emerging half-flux is printed in column fRight. It consists of three components whose fractional contributions are listed next, as in the spherical case: xAtt for the left-source attenuated radiation, xDs and xDe for the diffuse scattered and emitted components, respectively. Subsequent columns are as in the spherical case. The tables for the spectral shape of the left-emerging half-flux fLeft are analogous.
DUSTY's distribution contains two sample input files, slab1.inp and slab2.inp, which can be used as templates for the slab geometry. The output generated with slab1.inp is shown in appendix D.
DUSTY allows the user control of some of its inner working through tinkering with actual code statements that control the spatial and spectral grids. The appropriate statements were placed in the file userpar.inc separate from the main dusty.f, and are imbedded during compilation by the FORTRAN statement INCLUDE4. After modifying statements in userpar.inc , DUSTY must be recompiled to enable the changes.
The maximum size of DUSTY's spatial grid is bound by array dimensions. These are controlled by the parameter npY which sets the limit on the number of radial points. The default value of 40 must be decreased when DUSTY is run on machines that lack sufficient memory (see §1) and increased when DUSTY fails to achieve the prescribed accuracy (see §3.5). This parameter is defined in userpar.inc via
PARAMETER (npY=40)To modify npY simply open userpar.inc, change the number 40 to the desired value, save your change and recompile. That's all. Every other modification follows a similar procedure. Since DUSTY's memory requirements vary roughly as the second power of npY, the maximum value that can be accommodated on any given machine is determined by the system memory.
The parameter npY defines also the size npP of the grid used in angular integrations. In the case of planar geometry DUSTY uses analytic expressions for these integrations. Since this grid becomes redundant, npP can be set to unity, allowing a larger maximum npY. The procedure is described in userpar.inc.
DUSTY's wavelength grid is used both in the internal calculations and for the output of all wavelength dependent quantities. The number of grid points is set in userpar.inc by the parameter npL, the grid itself is read from the file lambda_grid.dat5. This file starts with an arbitrary number of text lines, the beginning of the wavelength list is signaled by an entry for the number of grid points. This number must be equal to npL entered in userpar.inc and to the actual number of entries in the list.
The grid supplied with DUSTY contains 105 points from 0.01 to 3.6×104 mm. The short wavelength boundary is to ensure adequate coverage of input radiation from an O star, for example, which peaks at 0.1 mm. Potential effects on the grain material by such hard radiation are not included in DUSTY. The long wavelength end is to ensure adequate coverage at all wavelengths where dust emission is potentially significant. Wavelengths can be added and removed provided the following rules are obeyed:
The shortest wavelength must be £ 0.01 mm, the longest ³ 3.6×104 mm.
The ratio of each consecutive pair must be £ 1.5.
The order of entries is arbitrary, DUSTY sorts them in increasing wavelength and the sorted list is used for all internal calculations and output. This provides a simple, convenient method for increasing the resolution at selected spectral regions: just add points at the end of the supplied grid until the desired resolution is attained. Make sure you update both entries of npL and recompile DUSTY.
In practice, tinkering with the wavelength grid should be reserved for adding spectral features. Specifying the optical properties of the grains at a resolution coarser than that of the wavelength grid defeats the purpose of adding grid points. The optical properties of grains supported by DUSTY are listed on the default wavelength grid. Therefore, modeling of very narrow features requires both the entry of a finer grid in lambda_grid.dat and the input of user-supplied optical properties (see §3.2.1) defined on that same grid.
DUSTY's default output is the file fname.out, described in §4.1. Additional output is optionally produced through selection flags, summarized in the following table. The second column lists the section number where a detailed description of the corresponding output is provided.
|Output Listing||§||Output File Triggered by Flag|
|Spectral properties, all models||4.2.1||fname.spp||fname.spp||fname.spp|
|Slab, left-face spectra||5.2||fname.zpp|
|Detailed spectra, each model||4.2.2||fname.stb||fname.s###||fname.s###|
|Slab, left-face spectra||5.2||fname.z###|
This appendix provides a central depository of potential programming and numerical problems. Some were already mentioned in the text and are repeated here for completeness.
****TERMINATED. EOF reached by RDINP while looking for input. *** Last line read:This message is a clear sign that the input is out of order.
Note: IEEE floating-point exception flags raised: Inexact; Underflow; See the Numerical Computation Guide, ieee_flags(3M)This ominous message is triggered on Solaris also by other applications and is not unique to DUSTY. The reason for it is not yet clear and it is not issued on other platforms. In spite of this statement, the code performs fine and produces results identical to those on machines that do not issue this warning.
=========================== Output from program Dusty Version: 2.0 =========================== INPUT parameters from file: sphere1.inp * ---------------------------------------------------------------------- * NOTES: * This is a simple version of an input file producing a minimal output. * ---------------------------------------------------------------------- Central source spectrum described by a black body with temperature: 2500 K -------------------------------------------- Abundances for supported grains: Sil-Ow Sil-Oc Sil-DL grf-DL amC-Hn SiC-Pg 1.000 0.000 0.000 0.000 0.000 0.000 MRN size distribution: Power q: 3.5 Minimal size: 5.00E-03 microns Maximal size: 2.50E-01 microns -------------------------------------------- Dust temperature on the inner boundary: 800 K -------------------------------------------- Density described by 1/r**k with k = 2.0 Relative thickness: 1.000E+03 -------------------------------------------- Optical depth at 5.5E-01 microns: 1.00E+00 Required accuracy: 5% -------------------------------------------- ==================================================== For compliance with the point-source assumption, the following results should only be applied to sources whose effective temperature exceeds 1737 K. ==================================================== RESULTS: -------- ### tau0 F1(W/m2) r1(cm) r1/rc theta1 Td(Y) err ### 1 2 3 4 5 6 7 ========================================================== 1 1.00E+00 2.88E+04 3.26E+14 8.78E+00 2.43E+00 44 0 ========================================================== (1) Optical depth at 5.5E-01 microns (2) Bolometric flux at the inner radius (3) Inner radius for L=1E4 Lsun (4) Ratio of the inner to the stellar radius (5) Angular size (in arcsec) when Fbol=1E-6 W/m2 (6) Dust temperature at the outer edge (in K) (7) Maximum error in flux conservation (%) ================================================= Everything is OK for all models ========== THE END ==============================
=========================== Output from program Dusty Version: 2.0 =========================== INPUT parameters from file: slab1.inp * ---------------------------------------------------------------------- * NOTES: * This is a simple version of an input file for calculation in * planar geometry with single source illumination. * ---------------------------------------------------------------------- Left-side source spectrum described by a black body with temperature: 2500 K -------------------------------------------- Abundances for supported grains: Sil-Ow Sil-Oc Sil-DL grf-DL amC-Hn SiC-Pg 1.000 0.000 0.000 0.000 0.000 0.000 MRN size distribution: Power q: 3.5 Minimal size: 5.00E-03 microns Maximal size: 2.50E-01 microns -------------------------------------------- Dust temperature on the slab left boundary: 800 K -------------------------------------------- Calculation in planar geometry: cos of left illumination angle = 1.000E+00 R = 0.000E+00 -------------------------------------------- Optical depth at 5.5E-01 microns: 1.00E+00 Required accuracy: 5% -------------------------------------------- RESULTS: -------- ### tau0 Fe1(W/m2) f1 r1(cm) Td(K) Te(L) err ### 1 2 3 4 5 6 7 ========================================================== 1 1.00E+00 2.59E+04 9.33E-01 3.43E+14 755 8.22E+02 0 ========================================================== (1) Optical depth at 5.5E-01 microns (2) Bol.flux of the left-side source at the slab left boundary (3) f1=F/Fe1, where F is the overall bol.flux in the slab (4) Position of the left slab boundary for L=1E4 Lsun (5) Dust temperature at the right slab face (6) Effective temperature of the left source (in K) (7) Maximum error in flux conservation (%) ================================================= Everything is OK for all models ========== THE END ==============================
DUSTY's distribution includes a library of data files with the complex refractive indices of various compounds of interest. The files are standardized in the format DUSTY accepts. Included are the optical constants for the seven built-in dust types as well as other frequently encountered astronomical dust components. This library will be updated continuously at the DUSTY site. The following table lists all the files currently supplied.
|File Name||Compound||Range (mm)||Ref|
|Al2O3-comp.nk||Al2O3-compact||7.8 - 200|||
|Al2O3-por.nk||Al2O3-porous||7.8 - 500|||
|amC-hann.nk||amorphous carbon||0.04 - 905|||
|amC-zb1.nk||amorphous carbon (BE)||0.05 - 1984|||
|amC-zb2.nk||amorphous carbon (ACAR)||0.04 - 1984|||
|amC-zb3.nk||amorphous carbon (ACH2)||0.04 - 948|||
|crbr300.nk||crystalline bronzite||6.7 - 487.4|||
|crMgFeSil.nk||crystalline silicate||6.7 - 584.9|||
|FeO.nk||FeO (5.7g/ccm)||0.2 - 500|||
|gloliMg50.nk||glassy olivine||0.2 - 500|||
|glpyr300.nk||glassy pyroxene at 300 K||6.7 - 487|||
|glpyrMg50.nk||glassy pyroxene||0.2 - 500|||
|glSil.nk||glassy silicate||0.4 - 500|||
|grph1-dl.nk||graphite, E ^c||0.001 - 103|||
|grph2-dl.nk||graphite, E ||c||0.001 - 103|||
|opyr-pwd.nk||ortho-pyroxenes - powder||5.0 - 25|||
|opyr-slb.nk||ortho-pyroxenes - slab||5.0 - 25|||
|OssOdef.nk||O-deficient CS silicate||0.4 - 104|||
|OssOrich.nk||O-rich IS silicate||0.4 - 104|||
|SiC-peg.nk||a-SiC||0.03 - 2000|||
|Sil-dlee.nk||``Astronomical silicate"||0.03 - 2000|||
|Sil-oss1.nk||warm O-deficient silicates||0.4 - 104|||
|Sil-oss2.nk||cold O-rich silicate||0.4 - 104|||
1 Current address: Department of Astrophysical Sciences, Princeton University, Princeton, NJ 08544
2 dusty.inp must be kept with the DUSTY executable file in the same directory.
3 Convergence and execution speed can be affected by the input radiation spectral shape. A hard spectrum heavily weighed toward short wavelengths, where the opacity is high, can have an effect similar to large tV.
4 userpar.inc must always stay with the source code in the same directory.
5 lambda_grid.dat must always stay with the DUSTY executable file in the same directory.