Creating model packages

This page describes the format required of a model package in order to be used by the fitter. The format adopted for all files is the FITS standard. All FITS files presented here should have BITPIX=-32 and EXTEND=T in the primary header. The model package should have a name starting with model_ and containing the following:

  • models.conf - a configuration file for the models.

  • seds/ - a directory containing all the model SEDs as fits or fits.gz files, in the format described below. In order to avoid huge numbers of files in a single directory, sub-directories can be created with a section of the model names. The size of this section can later be specified in the models Configuration file.

  • convolved/ - a directory containing all the convolved models, one file per filter. The name of the files should be filter.fits where filter should be replaced with the filter code (e.g. 2J, 2H, etc.).

  • parameters.fits.gz - the parameters for the models, in the same order as the convolved fluxes

Configuration file

The models.conf configuation file should be a plain-ASCII file containing the following keyword/value pairs:

  • The name of the model package:

    name = YSO models
    
  • The length of the sub-directories for SED files:

    length_subdir = 5
    

    In cases where hundreds of thousands of SEDs are present, it is recommended to split them into sub-directories inside the seds directory. This is done by taking the first few letters of all the models and putting all the models that have the same first few letters in the same sub-directory, with the name of these first letters. The above option is the length of the sub-string to use for this. For example, if length_subdir is set to 5, all models starting with 30001 should be in a directory called 30001 inside seds/.

  • Whether the models are aperture/scale dependent:

    aperture_dependent = yes
    

    This should only be set to no if the models are not absolutely scaled to 1kpc, and if they are only specified in one aperture. In this case, the distance_range option to fit() is ignored.

  • The step in the distance, in log space. Model SEDs are computed for a range of distances between mind and maxd, uniformly spaced in log space, and separated by this value:

    logd_step = 0.025
    

SED files

HDU 0

The primary header must contain following keywords:

VERSION  = 1   (integer) (the current version, in case we make big changes in future)
MODEL    = value (character) (the model name)
IMAGE    = T/F (logical) (whether images are available in HDU 0)
WAVLGHTS = T/F (logical) (whether wavelengths are available in HDU 1)
APERTURS = T/F (logical) (whether apertures are available in HDU 2)
SEDS     = T/F (logical) (whether SEDs are available in HDU 3)

If WAVLGHTS = T, then the header must contain:

NWAV = value (integer) which is the number of wavelengths

If APERTURS = T, then the header must contain:

NAP = value (integer) which is the number of apertures

If IMAGE = T, then this HDU should contain a data cube which is the model image as a function of wavelength. This will be specified in more detail in future.

HDU 1

if WAVLGTHS = T, this HDU should contain a 2-column binary table with NWAV values in each column. The first column should have the title WAVELENGTH, format 1E, and unit MICRONS. The second column should have the title FREQUENCY, format 1E, and unit HZ. Optionally, a third column can be included with the title STELLAR_FLUX, format 1E, and units specified appropriately. This column can be used to specify the model stellar photosphere used to compute YSO models for example. Only mJy and ergs/cm\^2/s are supported as units at this time. If specified, the stellar photosphere should have the correct scaling relative to the SEDs in HDU 3.

HDU 2

if APERTURS = T, this HDU should contain a 1-column binary table with NAP values. The column should have the title APERTURE, format 1E, and units AU. These are the apertures for which the SEDs in HDU 3 are tabulated.

HDU 3

if SED = T, this HDU should contain a binary table with at least one column, and HDU 1 and HDU 2 should also contain data. Each column should consist of NAP rows of real vectors with dimension NWAV. Thus, each cell contains an SED. The format of each column should be nE, where n=NWAV. The title and units of each column should be specified. The columns can contains SEDs such as the total flux, the stellar flux, the disk flux, etc. or related uncertainties. The following column titles are examples of ones that can be used:

TOTAL_FLUX
TOTAL_FLUX_ERR
STELLAR_FLUX
STELLAR_FLUX_ERR
DISK_FLUX
DISK_FLUX_ERR
ENVELOPE_FLUX
ENVELOPE_FLUX_ERR
DIRECT_FLUX
DIRECT_FLUX_ERR
SCATTERED_FLUX
SCATTERED_FLUX_ERR
THERMAL_FLUX
THERMAL_FLUX_ERR
etc.

The order of the columns is not important as there are FITS routines to search for a specific column.

Note

The SED fitter requires a column TOTAL_FLUX to be present, and will return an error otherwise. Only mJy and ergs/cm^2/s are supported as units at this time.

Convolved fluxes file

HDU 0

The primary header must contain following keywords:

FILTWAV  = value (real) (the characteristic wavelength of the filter)
NMODELS  = value (integer) (the number of models)
NAP      = value (integer) (the number of apertures)

HDU 1

This HDU should contain a 5-column binary table. The column titles should be:

MODEL_NAME
TOTAL_FLUX
TOTALF_FLUX_ERR
RADIUS_SIGMA_50
RADIUS_CUMUL_99

The first column should have format 30A and should contain the name of each model. No units are required. The second and third columns should have format nE where n=NAP, with each cell containing a vector with the fluxes in the different apertures. The fourth and fifth column should have format 1E and contain the outermost radius at which the surface brightness falls to 50% of the maximum surface brightness, and the radius inside which 99% of the flux is contained respectively. These two columns should have units AU.

HDU 2

This HDU should contain a 1-column binary table with NAP values. The column should have the title APERTURE, format 1E, and units AU. These are the apertures for which the fluxes in HDU 1 are tabulated.

Model parameters

HDU 0

The primary header must contain following keywords:

NMODELS  = value (integer) (the number of models)

HDU 1

This HDU should contain a binary table with the model parameters. Any number of columns can be included, in any order. Only parameters with format 1E will be usable by the programs to plot parameters, but text parameters with format nA can also be included (e.g. dust model filenames, etc.). One column is compulsory, with title MODEL_NAME and format 30A. It should contain the same names as the convolved fluxes file, and in the same order.