Image credit: NASA/JPL-Caltech/WISE Team


Image credit: NASA/JPL-Caltech/UCLA


Image credit: ESA/HSO/H-ATLAS


New-generation dust emission templates for star-forming galaxies

Boquien and Salim

What is BOSA?

BOSA is a software suite written in Python 3, developed to facilitate the distribution and usage of IR templates presented in Boquien & Salim (2021).

What can BOSA do?

With BOSA a user can generate a set of IR templates parameterized on IR luminosity or on IR luminosity and specific SFR (sSFR). Furthermore, a user can calculate the total IR luminosity and the total (obscured+unobscured) SFR by providing between one and four IR flux points in JWST, WISE, Spitzer or Herschel filters, at 0 < z < 4.

What is the basis for templates in BOSA?

The templates (and relations) have been developed from an extensive set of IR SEDs with wavelength coverage from 12 to 500 microns, coming from the WISE and Herschel-ATLAS surveys. The observed IR SEDs have been fit with Draine et al. (2014) models in order to obtain dust parameters and continuous IR spectra. The templates have then been obtained by a fitting linear function (in log monochromatic luminosity) at each spectral wavelength.

Why use BOSA templates and relations?

1. The BOSA 21 templates are based on a large sample (2584) of normal star-forming (SF) galaxies, and as such they avoid the biases that may be present in shallow IRAS or ISO samples that picked particularly luminous galaxies.

2. Type 1 and 2 AGN have thoroughly been removed from the sample to reduce non-stellar contamination.

3. The simultaneous dependence of the templates on two parameters (LTIR and sSFR, see image below) increases the utility at a range of redshifts and leads to more accurate results at any redshift.

4. The templates have no artificial discontinuities in either wavelength or luminosity. As a matter of fact, the use of functional relations entirely abandons the discreteness of the templates.

5. Obtaining the IR luminosities and SFRs based on single or multiple fluxes from JWST, WISE, Spitzer or Herschel is quite straightforward using the tools provided in the BOSA software suite.

Some other things you may want to know

Does the software given here correspond to what was used in the paper? Currently (v2021.6) it does. Any future modifications will be documented on this page.

Given that these templates have been developed using low-z galaxies, are they appropriate to be used at higher redshifts? BOSA templates can optionally depends on the sSFR, which should capture the IR spectrum “evolution”. The templates are based on a large dataset containing galaxies that can serve as higher redshift analogs, while mostly not being merger-driven starbursts. Redshift-dependent templates derived from stacking of high-redshift galaxies are available from other authors, but they offer less galaxy to galaxy flexibility.

How do I take advantage of the sSFR- dependent estimation of IR luminosity (or total SFR) when knowing sSFR requires knowing SFR in the first place, which is what I am after with my IR data? This can be achieved iteratively. In the first pass one can assign all galaxies some average sSFR typical for that redshift or stellar mass (or both). The sSFR can be refined in the second pass based on the IR SFR obtained in the first pass. Our tests indicate that two passes are sufficient. Stellar masses should, of course, be known.

How is it that even a single flux point can give a result? This is made possible by the fact that the templates are parameterized on an extensive quantify (IR luminosity or total SFR) as opposed to an intensive quantity such as a color. When the redshift is known, only one template can fit that single flux point, so the result is unique. When the user supplies multiple flux points we calculate LTIR (and IR SFR) based on each point independently, which can serve as an important consistency check, or reveal, e.g., an AGN contribution affecting some wavelengths.

You provide IR luminosity (and total SFR) estimates based on sSFR-dependent relations only when those are based on a single flux point, but not for estimates from multiple bands. Why is that? We have determined in testing that when more than one flux point is present (assuming they are not very close in wavelength), the IR color information essentially confers the same benefits as the knowledge of sSFR, so the latter is redundant.

What is the idea behind providing SFR in addition to LTIR. Is this just the obscured SFR that you obtained from LTIR with some conversion factor? No, this is the estimate of the total (obscured plus unobscured) SFR and we derive it by parametrizing the templates directly on the total SFR (instead of on LTIR). We have good estimates of the total SFR because we perform the SED fitting with UV, optical and IR constraints, allowing, importantly for free attenuation curves. Furthermore, our sSFR-dependent estimates of the total SFR will properly take into account the dust heating from older stellar populations.

How can I estimate the errors on the derived parameters? We do not provide errors since we are not actually fitting to the templates, but rather using functional relationships (see the paper for details). One can estimate the errors in a Monte Carlo fashion, by independently perturbing the flux points and redoing the estimation.

Other questions or comments? Please consult the paper or send us an email.


You can download discrete BOSA templates (luminosity vs. wavelength tables) parameterized on LTIR (or LTIR plus sSFR) without installing the software, as described under (1) and (2). In order to generate custom templates (3 and 4) and to derive dust parameters from user data (5), you will need to install BOSA.


Requirements: 1 GB of disc space; Python 3.8 or later. Download tar.gz file by clicking on the button, to the directory above the one in which you want the code to be installed. Your browser may perform gunzip automatically. Unpacking the code with tar -xvf will create the files in a new directory, including README.md, which you should read in addition (and preferably before) the rest of the content given here. Install the software by running python setup.py install. If you have both Python 2 and Python 3 installed you may have to install with python3 setup.py install. Consult the README for non system-wide installations.


BOSA is also available on github.

Tools and resources

(1) Precomputed templates parameterized on LTIR (ASCII or FITS)

Templates (41) spanning the range from log(LTIR) 8.5 to 12.5 (inclusive) in intervals of 0.1 dex. Wavelength (first column) is in nm (1001 points between 1 micron and 10 mm), luminosities (nuLnu) are in Solar luminosities.

Note that the calibration set contains galaxies with log(LTIR) between 9 and 12, so the range of above templates is somewhat extrapolated. These templates are recommended for aggregate characterization of normal star-forming galaxies at low redshift.

(2) Precomputed templates simultaneously parameterized on LTIR and sSFR (ASCII or FITS)

Template grid (41×14 = 574) spans the range from log(LTIR) 8.5 to 12.5 (inclusive) in intervals of 0.1 dex and log sSFR from -11.0 to -8.4 in intervals of 0.2 dex.log sSFR is listed as param2 in the headers.

Note that the calibration set contains galaxies with log sSFR between -11 and -9, so the range of above templates is somewhat extrapolated. These templates are recommended for characterization of star-forming galaxies spanning a range from relatively quiescent to star-bursting, at a range of redshifts.

(3) Routine for computing custom templates (or, more generally, average IR spectra)

Syntax for one-parameter mode:

bosa-templates par [list of logarithmic values of par]

where par is usually LTIR or SFR (but it can be other parameters, see README). Syntax for parameterization on LTIR and sSFR:

bosa-templates LTIR [list of log L(TIR)] sSFR [list of log sSFR].

In the case your system does not automatically find the routine name, try the explicit path to the python binaries, e.g., /Users/[username]/Library/Python/3.8/bin/bosa-templates or /Library/Frameworks/Python.framework/Versions/Current/bin. Output is a FITS file containing all of the spectra in a single file. log sSFR is listed as param2 in the headers.

(4) Interactive template vizualisation



It allows templates parameterized on LTIR and sSFR to be generated and vizualized interactively, using the sliders for these two quantities.

The generated template can be saved as a PDF plot or a FITS table.

(5) Routine for computing LTIR and total SFR from one or more flux points


bosa-estimators input_file

where the input file contains the redshift, log sSFR and up to four WISE, JWST, Spitzer or Herschel fluxes. See README for exact column names and the list of supported filters. The output consists of:

(a) A copy of input columns.

(b) SFR[allbands] and LTIR[allbands] are estimates based on the relations that simultaneously take into account all bands.

(c) SFR[filter_name] and LTIR[filter_name] are estimates based on L(TIR) (and SFR) dependent templates and based on a single flux point given by filter_name. The number of SFR/LTIR column pairs will match the number of input bands.

(d) SFR2nd[filter_name] and LTIR2nd[filter_name] are estimates based on templates that add the dependence on the 2nd parameter (sSFR), and based on a single flux point given by filter_name. The number of SFR2nd/LTIR2nd column pairs will match the number of input bands.

The input file can be a plain text file with some common extension, or a fits file with corresponding extension. Output will be in the same format and the file name will be prefixed by “output”. Calculated quantities are not in logarithms. SFRs assume a Chabrier IMF.

If multiple bands were supplied and they are not very close in wavelength, LTIR[allbands] and SFR[allbands] will be the preferred estimates. For estimates based on single fluxes, LTIR2nd and SFR2nd will be preferred if sSFR was supplied.

(6) Tables with coefficients needed to calculate LTIR and SFR without the code


The four files included in coefficients.tar correspond to Tables 1 and 3 from the paper, but for a range of redshifts in steps of 0.01. Also, Table 1 is expanded here to include coefficients for relations based on multiple bands (Section 5.6 in paper). The values listed under the filter name are coefficients m or mi.


Questions and comments:

Samir Salim

Email: salimsindianaedu

Médéric Boquien

Email: mederic.boquienuantofcl

Modified 2021 Jun 9