Spectral Energy Distribution (SED)

By default, ProDiMo will calculate the SED at a distance of 140pc under 45 degree inclination, even if radiative_transfer=.false.. So, even if you have switched off proper radiative transfer, you will still get an impression about how your assumed dust temperature structure and dust size parameters would look like. You can adapt the settings for the SED calculation by adding the following lines to your Parameter.in:

------ image and SED parameters ------
.true.      ! calcSED            : calculate SED and images?
200         ! NlamSED            : number of lambda gridpoints
0.2         ! lminSED            : minimum lambda[mic]
5000.0      ! lmaxSED            : minimum lambda[mic]
97.0        ! dist      [pc]     : distance
45.0        ! incl      [deg]    : inclination (0=face-on)
.true.      ! write_image_out    : Produce image for each wavelength (image.out) ?

SED calculation can be switched off by setting calcSED=.false.

Use NlamSED to choose the number of wavelength points (maximum 75000, but that will be slow) and lminSED (micron) and lmaxSED (micron) to specify the wavelength range. ProDiMo will use a logarithmically equidistant wavelength grid in between. The opacity will be interpolated at the ProDiMo wavelength values.

Set dist and incl to change distance (in pc) and inclination (in degrees with 0 being a disk seen face-on). The incl parameter also accepts multiple values:

0,20,40,80   ! incl    [deg]     : calculate SED for the given inclinations.

By default the SED calculations also produce an image for each wavelength point (see Continuum Images). However, such a file can become quite big, and if not needed this can be switched off by setting write_image_out=.false.-

To switch to an older mode for SED calculation (using the spectral bands from the continuum RT) you can use monoSED=.false.. However, this is only recommended if you want to rerun very old models monoSED=.true. is the default and recommended value.

User-defined wavelength grid

In some cases, it is useful to have the results from the SED calculations at distinct wave-length points defined by the user (e.g. exactly at those points where I have observational data). This can be done by providing a file called SEDlamgrid.in. If this file is found in the current model directory, ProDiMo calculates the SED only at the wavelength points given in that file. An example of such a file is attached (SEDlamgrid.in). The unit for the wavelength is micron.

Comparing with observations

The idl-macro prodimo.pro (but also the prodimopy python tools) will visualize the spectral flux (SED) and the spatial distribution of continuum intensity (images) at several wavelengths. It will also look for a file called SEDobs.dat that is supposed to contain all observational photometric data to compare the calculated SED with. Format is as

29
  lam[mic]     Flam[Jy]     sigma[Jy]  rem  filter    Ref
     0.155     0.252941     0.017433    ok  generic   Wesselius et al.(1982)
     0.180     0.434248     0.028122    ok  generic   Wesselius et al.(1982)
     0.220     0.489273     0.037767    ok  generic   Wesselius et al.(1982)
     0.249     0.720323     0.049025    ok  generic   Wesselius et al.(1982)
     0.329     1.517713     0.067827    ok  generic   Wesselius et al.(1982)
    11.5      28.763314     1.728675    ??  IRAS12    Weaver & Jones(1992)
    24.0      49.598494     3.965399    ??  IRAS25    Weaver & Jones(1992)
    65.0     115.504082    11.552718    ??  IRAS60    Weaver & Jones(1992)
   105.0     114.368223    11.440253    ??  IRAS100   Weaver & Jones(1992)
   350.002     8.927684     1.409592    ok  generic   Mannings(1994)
   449.997     3.819208     0.569864    ok  generic   Mannings(1994)
   749.998     0.526936     0.080990    ok  generic   Mannings(1994)
   800.000     0.504942     0.045995    ok  generic   Mannings(1994)
   850.000     0.358966     0.066994    ok  generic   Mannings(1994)
  1100.000     0.149987     0.020998    ok  generic   Mannings(1994)
  1300.000     0.102993     0.017999    ok  generic   Mannings(1994)
  2700.000     0.010599     0.000400    ok  generic   Mannings(1994)
 0.344         1.7948       3.4243E-01  ok  Stroemgren_u      Vizier catalogue
 0.410         5.5029       5.0755E-01  ok  Stroemgren_v      Vizier catalogue
 0.467         5.8944       2.4286E-01  ok  Stroemgren_b      Vizier catalogue
 0.550         5.5035       2.0280E-01  ok  Stroemgren_y      Vizier catalogue
 0.365         2.8112E+00   2.5892E-03  ok  Johnson_U_Turpol  Benjamin
 0.43          5.7099E+00   5.2590E-03  ok  Johnson_B_Turpol  Benjamin
 0.55          5.4784E+00   5.0458E-03  ok  Bessell_V         Benjamin
 0.63          5.2155E+00   9.6072E-03  ok  Coussins_R        Benjamin
 0.78          4.5600E+00   8.3999E-03  ok  Coussins_I        Benjamin
 1.25          6.7223E+00   1.1145E-01  ok  J_2Mass    Cohen(2003)
 1.65          9.8599E+00   1.8164E-01  ok  H_2Mass    Cohen(2003)
 870.0         0.00895      0.0116      ul  LABOCA     Neal(2009)

The first three columns are lambda[micron], flux[Jy] and sigma[Jy]. 4th column is a flag: ok = valid observational data (point), ul = upper limit (point with downward arrow), ?? = unused observation (smaller point), UL = unused upper limit. Note that sigma is 1-sigma, even for upper limits. Unused means that this point is disregarded in the χ2\chi^2 computation. The 5th column contains the names of the filter transmission files. "filter-name" means that ProDiMo will take the transmission data from ProDiMo/data/filter/filter-name.dat.

If you compile your SEDobs.dat, you need to know, for every point, which platform and instrument were used, and find the according filter transmission file somewhere, which you should add to /ProDiMo/data/filter. From the calculated model fluxes Fnu(lambda), ProDiMo will then integrate over lambda, weighted by that filter transmission, to calculate a flux in [Jy] that can be compared to the observational value provided in this file. If you have only magnitudes, you have to convert the magnitudes to Jansky. If you want to do this correctly, you need to know the "zero-point" of the instrument-filter-combination, I actually do not know how to do that properly. Otherwise, just use http://www.stsci.edu/hst/nicmos/tools/conversion_form.html, where you need to know, however, at least the central wavelength of the filter. It can make quite a difference, for example, whether it's filter "R" or "Rs"! If the filter name is specified as "generic", a generic filter profile is generated with 12% spectral width, or 1% for "mono".

SED.png

If you have done everything correctly, prodimo.pro will visualize the calculated SED, and observations, in a plot like this. Besides the used (blue) and unused (cyan) photometric points, ProDiMo and prodimo.pro will automatically read low-resolution spectra from

UV.dat                  lam[A]   flux[erg/cm^2/s/A]    sigma
OpticalSpectrum.dat     lam[A]   flux[erg/cm^2/s/Hz]
nearIR_Spectrum.dat     lam[A]   flux[W/m2/mic]
SpitzerIRSspec.dat      lam[mic] flux[Jy]              sigma
ISO-SWS-spectrum.dat    lam[mic] flux[Jy]
ISO-LWS-spectrum.dat    lam[mic] flux[W/cm^2/mic]

if present. ProDiMo will then calculate two χ2\chi^2, first separately for photometry "chi_PHOTO", and all (near-far)-IR spectra "chi_SPITZER". You will find these chi-values in the stdout-file, for example, this model has

  ==> photometry-chi =  1.3890
  ==>    Spitzer-chi =  1.0397

There are two more chi, namely for the gas emission lines (see input_and_output_files), and for images (see Images). The overall quality of a model, in terms of how bad it compares to all available observations, is then calculated as

chi^2 = (  weight_PHOTO * chi_PHOTO^2 + weight_SPITZER * chi_SPITZER^2
         + weight_LINES * chi_LINES^2 + weight_IMAGES  * chi_IMAGES^2 )
      / ( weight_PHOTO + weight_SPITZER + weight_LINES + weight_IMAGES )

where the weights can be specified in Parameter.in, otherwise they are by default =1/4. In cases where no spectral, line or image data is present, the corresponding weights will be put to zero.

MCFOST-like SED chi2

25 March 2013 Revision 0b4a7f27

There is not a unique fool-proof way to compute chi-squared. The switch:

.true.  ! chi_logbin

will group photometric points into bin in the log10 scale from 1 micron. For example, if there are 4 photometric points between 10 and 100 microns, each of those photometric band will be given a weight of 0.25. The stellar photometric data are not binned (lambda<1 micron). At the end, the chi-squared is normalized by the number of log10 bins. It is up to the user to test what is the best chi-squared computation for his/her problem. If the photometric points are well spaced in log10(wavelength) then the standard and the log10 binned chi-squared values should be similar. If there is a clustering of points in a given bin, this bin may have too much weight in the standard chi-squared computation. Here is an example:

    lam[mic]    Fmodel[Jy]  Fphot[Jy]        err
      0.1264 ok  1.717E-03  1.321E-03      0.615  generic
      0.1477 ok  2.319E-03  3.200E-03     -2.147  generic
      0.1679 ok  2.973E-03  2.326E-03      1.591  generic
      0.1894 ok  3.750E-03  2.658E-03      2.294  generic
      0.2196 ok  5.008E-03  5.736E-03     -0.904  generic
      0.2530 ok  6.631E-03  8.051E-03     -1.294  generic
      0.2863 ok  8.486E-03  1.054E-02     -1.447  generic
      0.3600 ok  1.446E-02  3.150E-02     -5.188  generic
      0.4400 ok  5.334E-02  6.760E-02     -1.580  generic
      0.5500 ok  1.621E-01  1.400E-01      0.979  generic
      0.7100 ok  3.511E-01  2.600E-01      2.002  generic
      0.9700 ok  6.376E-01  4.100E-01      2.944  generic
      1.2350 ok  7.808E-01  7.000E-01      0.728  generic
      1.6620 ok  9.571E-01  8.500E-01      0.791  generic
      2.1590 ok  7.287E-01  7.200E-01      0.080  generic
     10.8000 ok  6.067E-01  5.800E-01      0.300  generic
     12.0000 ok  5.785E-01  7.000E-01     -1.271  generic
     23.6800 ok  1.564E+00  2.270E+00     -2.484  generic
     25.0000 ok  1.686E+00  2.440E+00     -2.464  generic
     60.0000 ok  4.453E+00  3.920E+00      0.850  generic
     70.0000 ok  4.857E+00  3.903E+00      1.458  generic
     71.4300 ok  4.903E+00  3.640E+00      1.485  generic
    100.0000 ok  5.640E+00  5.040E+00      0.750  generic
    155.9000 ok  6.410E+00  6.570E+00     -0.123  generic
    160.0000 ok  6.441E+00  7.388E+00     -0.914  generic
    450.0000 ok  3.981E+00  4.250E+00     -0.327  generic
    800.0000 ok  1.963E+00  1.450E+00      1.416  generic
    850.0000 ok  1.770E+00  1.380E+00      1.659  generic
   1100.0000 ok  1.021E+00  8.740E-01      1.040  generic
   3400.0000 ok  9.696E-02  4.100E-02      5.738  generic
   7000.0000 ok  1.119E-02  8.000E-03      2.239  generic

The standard method gives: SED-chi = 2.0150 whereas the log10 binned chi-squared gives 1.9620.