FSPS
The FSPS module configures a single FSPS-based spectral synthesis component.
Configuration
[FSPS]
imf = "salpeter"
spec = "miles"
isoc.type = "mist"
# nebular = {}
# frac_xrb = 0.0
# sfh = "ssp"
dust = "powerlaw"
# agn = {}
output_options = {
tage = true,
tau = true,
const = true,
fburst = true,
tburst = true,
sf_trunc = true,
sf_slope = true,
}
Fields
imf
Sets the initial mass function (IMF) type.
Uses the Salpeter (1955) IMF.
imf = "salpeter"
Uses the Chabrier (2003) IMF.
imf = "chabrier03"
Uses the Kroupa (2002) IMF.
# Use the default Kroupa IMF:
imf = "kroupa02"
# Or provide the power-law slopes:
imf = {
type = "kroupa02",
imf1 = 1.3,
imf2 = 2.3,
imf3 = 2.3,
}
imf1
Logarithmic slope of the IMF over \(0.08 \leq M/M_\odot < 0.5\).
imf2
Logarithmic slope of the IMF over \(0.5 \leq M/M_\odot < 1.0\).
imf3
Logarithmic slope of the IMF over \(M/M_\odot \geq 1.0\).
Uses the van Dokkum (2008) IMF.
# Use the default van Dokkum IMF:
imf = "vandokkum08" # or "vd08" for short
# Or provide the characteristic mass:
imf = {
type = "vd08",
vdmc = 0.08,
}
vdmc
The characteristic mass \(m_c\) that sets the turnover mass of the IMF,i.e. the mass at which the IMF "peaks". For \(m_c=0.08\), this IMF is nearly identical to the Chabrier (2003) IMF.
Uses the Davé (2008) IMF.
# Use the default Davé IMF:
imf = "dave08"
# Or provide the characteristic mass:
imf = {
type = "dave08",
mdav = 0.5,
}
mdav
The characteristic mass \(m_\mathrm{dav}\) that sets the mass where the logarithmic slope of the IMF changes. The slope is \(1.3\) over \(0.08 \leq M/M_\odot < m_\mathrm{dav}\) and \(2.3\) over \(M/M_\odot \geq m_\mathrm{dav}\).
spec
Sets the spectral library type. Accepted values are miles, basel, c3k, and
bpass.
Note
bpass requires setting the IMF type to salpeter and the isochrone library type to bpass.
isoc
Sets the isochrone library type.
Uses the MIST isochrones.
# Use the default MIST isochrones:
isoc = "mist"
# Or customize the parameters:
isoc = {
type = "mist",
fbhb = 0.0,
sbss = 0.0,
agb = 1.0,
dell = 0.0,
delt = 0.0,
redgb = 1.0,
pagb = 1.0,
stellar_remnants = true,
cstar_spectra = true,
agb_dust = 1.0,
wr_spectra = true,
mdot = false,
}
Uses the Padova isochrones.
# Use the default Padova isochrones:
isoc = "padova"
# Or customize the parameters:
isoc = {
type = "padova",
fbhb = 0.0,
sbss = 0.0,
tpagb_norm_type = "villaume15",
agb = 1.0,
dell = 0.0,
delt = 0.0,
redgb = 1.0,
pagb = 1.0,
stellar_remnants = true,
cstar_spectra = true,
agb_dust = 1.0,
wr_spectra = true,
mdot = false,
}
Uses the PARSEC isochrones.
# Use the default PARSEC isochrones:
isoc = "parsec"
# Or customize the parameters:
isoc = {
type = "parsec",
agb = 1.0,
dell = 0.0,
delt = 0.0,
redgb = 1.0,
stellar_remnants = true,
cstar_spectra = true,
agb_dust = 1.0,
}
Uses the BaSTI isochrones.
# Use the default BaSTI isochrones:
isoc = "basti"
# Or customize the parameters:
isoc = {
type = "basti",
fbhb = 0.0,
sbss = 0.0,
agb = 1.0,
dell = 0.0,
delt = 0.0,
redgb = 1.0,
pagb = 1.0,
stellar_remnants = true,
cstar_spectra = true,
agb_dust = 1.0,
wr_spectra = true,
}
Uses the Geneva isochrones.
# Use the default Geneva isochrones:
isoc = "geneva"
# Or customize the parameters:
isoc = {
type = "geneva",
sbss = 0.0,
stellar_remnants = true,
wr_spectra = true,
}
Uses the BPASS isochrones.
isoc = "bpass"
Note
bpass requires setting the IMF type to salpeter and the spectral library type to bpass.
fbhb
A Parameter controlling the fraction of HB stars that are blue. Accepted range is \([0.0, 0.5]\).
sbss
A Parameter controlling the number of BS stars per unit HB star. Accepted range is \([0.0, 1.0)\).
tpagb_norm_type
Sets the normalization of the TP-AGB stars that applies to the Padova isochrones. Accepted values are:
default: Default normalization of the Padova isochrones.conroygunn10orcg10: Normalization from Conroy & Gunn (2010).villaume15orvcj15: Normalization from Villaume et al. (2015).
agb
A Parameter controlling the weight given to TP-AGB stars. Accepted range is \([0.0, +\infty)\).
dell
A Parameter controlling the shift in \(\log L_\mathrm{bol}\) of the TP-AGB isochrones. The meaning of this parameter has changed to reflect the updated calibrations presented in Conroy, Gunn & White (2009), i.e. these parameters now refer to a modification about the calibrations presented in that paper. Accepted range is \((-\infty, +\infty)\).
delt
A Parameter controlling the shift in \(\log T_\mathrm{eff}\) of the TP-AGB isochrones. The meaning of this parameter has changed to reflect the updated calibrations presented in Conroy, Gunn & White (2009), i.e. these parameters now refer to a modification about the calibrations presented in that paper. Accepted range is \((-\infty, +\infty)\).
redgb
A Parameter controlling the weight given to RGB stars. Accepted range is \([0.0, +\infty)\).
pagb
A Parameter controlling the weight given to post-AGB stars. Accepted range is \([0.0, +\infty)\).
stellar_remnants
Whether to include stellar remnants in the stellar mass computation.
cstar_spectra
Whether to use the carbon star spectra from Aringer et al. (2009).
agb_dust
A Parameter controlling the weight given to circumstellar AGB dust. Accepted range is \([0.0, +\infty)\).
wr_spectra
Whether to use the Wolf-Rayet spectra from Smith et al. (2002).
mdot
Whether to use the mass loss rate tabulated in the MIST isochrone files for the AGB dust model.
nebular
Sets the nebular emission. When ommited, the nebular emission model is disabled.
nebular = {
gas-logu = -2.0
gas-logz = 0.0
continuum = true
cloudy = false
}
gas_logu
A Parameter controlling the gas ionization parameter \(\log U\). Accepted range is \((-\infty, +\infty)\).
gas_logz
A Parameter controlling the gas metallicity in units of \(\log(Z/Z_\odot)\). Accepted range is \((-\infty, +\infty)\).
continuum
Whether to include the nebular continuum component.
cloudy
Whether to incldue dust in the Cloudy tables.
frac_xrb
frac_xrb = 0.0
A Parameter controlling the scaling factor for the X-ray binary source spectrum added to SSPs. Accepted range is \([0.0, +\infty)\).
sfh
Sets the star formation history. When omitted, it defaults to ssp.
Disables the SFH and uses a simple stellar population.
sfh = "ssp"
Uses one or two decaying exponentials to model the SFH.
sfh = {
type = "tau",
tage = 0.0,
tau = 0.0,
const = 0.0,
fburst = 0.0,
tburst = 11.0,
}
Uses one or two dealyed decaying exponentials to model the SFH.
sfh = {
type = "delayed-tau",
tage = 0.0,
tau = 0.0,
const = 0.0,
fburst = 0.0,
tburst = 11.0,
}
Uses the SFH from Simha et al. (2014).
sfh = {
type = "simha",
tage = 0.0,
tau = 0.0,
sf_trunc = 0.0,
sf_slope = 0.0,
}
TODO
tage
A Parameter controlling the age of the stellar population (in Gyr). Accepted range is \((0.0, +\infty)\).
tau
A Parameter controlling the e-folding time (in Gyr) for the exponential SFH component. Accepted range is \((-\infty, +\infty)\).
const
A Parameter controlling the constant component of the SFH, defined as the fraction of mass formed in the constant mode. Accepted range is \([0.0, 1.0]\).
fburst
A Parameter controlling the fraction of mass formed in an instantaneous burst. Accepted range is \([0.0, 1.0]\).
tburst
A Parameter controlling the time when the burst occurs (in
Gyr). If tburst > tage then there is no burst. Accepted range is
\((0.0, +\infty)\).
sf_trunc
A Parameter controlling the truncation time of the SFH (in
Gyr). If set to 0.0, there is no truncation. Accepted range is
\([0.0, +\infty)\).
sf_slope
A Parameter controlling the slope of the SFH after
sf_trunc. Accepted range is \((-\infty, +\infty)\).
dust
Sets the dust attenuation and emission.
Uses a powerlaw to model the dust attenuation curve.
dust = {
type = "powerlaw",
dust_index = -0.7,
dust1_index = -1.0,
dust_tesc = 7.0,
dust1 = 0.0,
dust2 = 0.0,
dust3 = 0.0,
frac_nodust = 0.0,
frac_obrun = 0.0,
# emission = "dl07",
# duste_qpah = 3.5,
# duste_umin = 1.0,
# duste_gamma = 0.01,
}
Uses the Milky Way extinction law to model the dust attenuation.
dust = {
type = "milkyway",
dust1_index = -1.0,
mwr = 3.1,
uvb = 1.0,
dust_tesc = 7.0,
dust1 = 0.0,
dust2 = 0.0,
dust3 = 0.0,
frac_nodust = 0.0,
frac_obrun = 0.0,
# emission = "dl07",
# duste_qpah = 3.5,
# duste_umin = 1.0,
# duste_gamma = 0.01,
}
Uses the attenuation curve from Calzetti et al. (2000).
dust = {
type = "calzetti00",
dust1_index = -1.0,
dust_tesc = 7.0,
dust1 = 0.0,
dust2 = 0.0,
dust3 = 0.0,
frac_nodust = 0.0,
frac_obrun = 0.0,
# emission = "dl07",
# duste_qpah = 3.5,
# duste_umin = 1.0,
# duste_gamma = 0.01,
}
Uses the attenuation curve from Witt & Gordon (2000).
dust = {
type = "wittgordon00",
dust1_index = -1.0,
wgp1 = 0.25,
wgp2 = "mw+dusty",
wgp3 = "homogeneous",
dust_tesc = 7.0,
dust1 = 0.0,
dust2 = 0.0,
dust3 = 0.0,
frac_nodust = 0.0,
frac_obrun = 0.0,
# emission = "dl07",
# duste_qpah = 3.5,
# duste_umin = 1.0,
# duste_gamma = 0.01,
}
Uses the attenuation curve from Kriek & Conroy (2013).
dust = {
type = "kriekconroy13",
dust_index = -0.7,
dust1_index = -1.0,
dust_tesc = 7.0,
dust1 = 0.0,
dust2 = 0.0,
dust3 = 0.0,
frac_nodust = 0.0,
frac_obrun = 0.0,
# emission = "dl07",
# duste_qpah = 3.5,
# duste_umin = 1.0,
# duste_gamma = 0.01,
}
Uses the attenuation curve from Gordon et al. (2003).
dust = {
type = "gordon03",
dust1_index = -1.0,
dust_tesc = 7.0,
dust1 = 0.0,
dust3 = 0.0,
frac_nodust = 0.0,
frac_obrun = 0.0,
# emission = "dl07",
# duste_qpah = 3.5,
# duste_umin = 1.0,
# duste_gamma = 0.01,
}
Uses the attenuation curve from Reddy et al. (2015).
dust = {
type = "reddy15",
dust1_index = -1.0,
dust_tesc = 7.0,
dust1 = 0.0,
dust2 = 0.0,
dust3 = 0.0,
frac_nodust = 0.0,
frac_obrun = 0.0,
# emission = "dl07",
# duste_qpah = 3.5,
# duste_umin = 1.0,
# duste_gamma = 0.01,
}
Dust parameter definitions follow the FSPS manual and the python-FSPS documentation. [FSPS-Manual]
dust_index
A Parameter controlling the power-law index of the dust
attenuation curve (used by powerlaw and kriekconroy13). Accepted range is
\((-\infty, +\infty)\).
dust1_index
A Parameter controlling the power-law index of the
attenuation curve affecting stars younger than dust_tesc. Accepted range is
\((-\infty, +\infty)\).
dust_tesc
A Parameter controlling the log-time (in years) for clearing
birth clouds. Stars younger than dust_tesc are attenuated by both dust1 and
dust2, while older stars are attenuated by dust2 only. Accepted range is
\((-\infty, +\infty)\).
dust1
A Parameter controlling the attenuation of young stellar
light (ages \(\le\) dust_tesc). Accepted range is \([0.0, +\infty)\).
dust2
A Parameter controlling the attenuation of older stellar
light (ages \(>\) dust_tesc). Accepted range is \([0.0, +\infty)\).
dust3
A Parameter controlling extra attenuation of older stellar light that does not affect young stars. Accepted range is \([0.0, +\infty)\).
frac_nodust
A Parameter controlling the fraction of starlight not
attenuated by the diffuse dust component (i.e. not affected by dust2).
Accepted range is \([0.0, 1.0]\).
frac_obrun
A Parameter controlling the fraction of young stars (\(t <\)
dust_tesc) that are not attenuated by dust1 and that do not contribute to
nebular emission. These stars are still attenuated by dust2. Accepted range is
\([0.0, 1.0]\).
mwr
A Parameter controlling the total-to-selective extinction ratio \(R_V = A_V / E(B-V)\) for the Milky Way attenuation curve. Accepted range is \((-\infty, +\infty)\).
uvb
A Parameter controlling the strength of the 2175 \AA\ extinction bump relative to the standard Milky Way curve. Accepted range is \((-\infty, +\infty)\).
wgp1
A Parameter selecting the optical depth in the Witt & Gordon (2000) models. Accepted values are \(0.25\), \(0.50\), \(0.75\), \(1.00\), \(1.50\), \(2.00\), \(2.50\), \(3.00\), \(3.50\), \(4.00\), \(4.50\), \(5.00\), \(5.50\), \(6.00\), \(7.00\), \(8.00\), \(9.00\), and \(10.0\).
wgp2
Sets the large-scale geometry and extinction curve for the Witt & Gordon (2000)
models. Accepted values are mw+dusty, mw+shell, mw+cloudy, smc+dusty,
smc+shell, and smc+cloudy.
wgp3
Sets the local geometry for the Witt & Gordon (2000) models. Accepted values are
homogeneous and clumpy.
emission
Sets the dust emission SED library type. Accepted values are dl07 and
themis.
duste_qpah
A Parameter controlling the PAH mass fraction in the dust
emission model. Accepted range is \([0.47, 4.58]\) for dl07 and \([0.91, 18.18]\)
for themis.
duste_umin
A Parameter controlling the minimum radiation field strength
in units of the Milky Way value for the dust emission model. Accepted range is
\([0.1, 25.0]\) for dl07 and \([0.1, 80.0]\) for themis.
duste_gamma
A Parameter controlling the relative contribution of dust heated at a radiation field strength of \(U_\mathrm{min}\) and dust heated at \(U_\mathrm{min} < U \le U_\mathrm{max}\). Accepted range is \([0.0, 1.0]\).
agn
Sets the dust emission associated with an AGN torus.
agn = {
fagn = 0.0,
agn_tau = 10.0,
}
fagn
A Parameter controlling the total luminosity of the AGN, expressed as a fraction of the bolometric stellar luminosity. Accepted range is \([0.0, 1.0]\).
agn_tau
A Parameter controlling the optical depth of the AGN dust torus. Accepted range is \([5.0, 150.0]\).