Modelling Stellar Populations¶
fsps.StellarPopulation
drives FSPS and is generally the only API needed.
fsps.find_filter()
can also be used interactively to search for a filter (see also Table of FSPS Filters).
Example¶
Lets start by initializing a simple stellar population with solar metallicity and some dust with a Calzetti et al (2000) extinction curve:
>>> import fsps
>>> sp = fsps.StellarPopulation(compute_vega_mags=False, zcontinuous=1,
sfh=0, logzsol=0.0, dust_type=2, dust2=0.2)
>>> sp.libraries
('pdva', 'miles')
The last line indicates that we are using the Padova isochrones and MILES spectral library. These can be changed only within FSPS itself (which must recompiled and pythonFSPS reinstalled for the changes to take effect.)
Let’s get the AB magnitudes in SDSS bands, for an SSP that is 13.7 Gyr old:
>>> sdss_bands = fsps.find_filter('sdss')
>>> print(sdss_bands)
['sdss_u', 'sdss_g', 'sdss_i', 'sdss_r', 'sdss_z']
>>> sp.get_mags(tage=13.7, bands=sdss_bands)
array([ 9.85484694, 7.8785663 , 6.56580511, 6.99828574, 6.16779663])
Now we can change a parameter (say, lower the metallicity) and get a new set of magnitudes:
>>> sp.params['logzsol'] = 1
>>> sp.get_mags(tage=13.7, bands=sdss_bands)
array([ 8.5626572 , 7.07918435, 6.05304881, 6.38592117, 5.84199 ])
We can also get the spectrum, here in units of \(L_\odot/\mathrm{Hz}\), as well as the total stellar mass formed by 13.7 Gyr and the surviving stellar mass at 13.7 Gyr (both in units of \(M_\odot\)):
>>> wave, spec = sp.get_spectrum(tage=13.7)
>>> sp.formed_mass
1.0
>>> sp.stellar_mass
0.57809244144339011
It is highly recommended that only one instance of fsps.StellarPopulation
be used in a given program.
Example using nebular emission¶
We initialize a simple stellar population and set the flag to include nebular emission:
>>> sp = fsps.StellarPopulation(zcontinuous=1,
add_neb_emission=1)
We can change the stellar metallicity, the gas phase metallicity, the gas ionization parameter, and then return the total spectrum at 1 Myr:
>>> sp.params['logzsol'] = 1.0
>>> sp.params['gas_logz'] = 1.0
>>> sp.params['gas_logu'] = 2.5
>>> wave, spec = sp.get_spectrum(tage=0.001)
Note: for the nebular model to be fully selfconsistent, the gas phase metallicity and the stellar metallicity should be set to the same value. This effectively adds the emission spectrum to the same stellar spectrum that was used as the ionizing spectrum in Cloudy. If users choose to vary the gas phase metallicity at constant stellar metallicity, expect nonhydrogenic emission lines to be accurate within 115%.
Emission line wavelengths and line luminosities can be accessed through the stellar population object:
>>> sp.emline_wavelengths
>>> sp.emline_luminosity
API Reference¶

class
fsps.
StellarPopulation
(compute_vega_mags=False, vactoair_flag=False, zcontinuous=0, **kwargs)¶ This is the main interface to use when interacting with FSPS from Python. Most of the Fortran API is exposed through Python hooks with various features added for user friendliness. It is recommended to only instantiate one StellarPopulation object in a given program. When initializing, you can set any of the parameters of the system using keyword arguments. Below, you’ll find a list of the options that you can include (with the comments taken directly from the FSPS docs). Unless otherwise noted, you can change these values later using the
params
property—which isdict
like. For example:sp = StellarPopulation(imf_type=2, zcontinuous=1) sp.params["imf_type"] = 1 sp.params["logzsol"] = 0.3 sp.params["sfh"] = 1
Parameters:  compute_vega_mags – (default: False)
A switch that sets the zero points of the magnitude system:
True
uses Vega magnitudes versus AB magnitudes. Can only be changed during initialization.  vactoair_flag – (default: False)
If
True
, output wavelengths in air (rather than vac). Can only be changed during initialization.  zcontinuous –
(default: 0) Flag specifying how interpolation in metallicity is performed before computing composite models:
 0: No interpolation, use the metallicity index specified by
zmet
.  1: The SSPs are interpolated to the value of
logzsol
before the spectra and magnitudes are computed, and the value ofzmet
is ignored.  2: The SSPs are convolved with a metallicity distribution function
specified by the
logzsol
andpmetals
parameters. The value ofzmet
is ignored.  3: Use all available SSP metallicities when computing the composite
model, for use exclusively with tabular SFHs where the metallicity
evolution as function of age is given (see set_tabular_sfh()). The
values of
zmet
andlogzsol
are ignored. Furthermoreadd_neb_emission
must be set to False.
Can only be changed during initialization.
 0: No interpolation, use the metallicity index specified by
 add_agb_dust_model – (default: True) Switch to turn on/off the AGB circumstellar dust model presented in Villaume (2014). NB: The AGB dust emission is scaled by the parameter agb_dust.
 add_dust_emission – (default: True) Switch to turn on/off the Draine & Li 2007 dust emission model.
 add_igm_absorption – (default: False)
Switch to include IGM absorption via Madau (1995). The
zred
parameter must be nonzero for this switch to have any effect. The optical depth can be scaled using theigm_factor
parameter.  add_neb_emission – (default: False) Switch to turn on/off a nebular emission model (both continuum and line emission), based on Cloudy models from Nell Byler. Contrary to FSPS, this option is turned off by default.
 add_neb_continuum – (default: True)
Switch to turn on/off the nebular continuum component (automatically
turned off if
add_neb_emission
isFalse
).  add_stellar_remnants – (default: True) Switch to add stellar remnants in the stellar mass computation.
 redshift_colors – (default: False)
Flag specifying how to compute magnitudes. This has no effect in
pythonFSPS. Magnitudes are always computed at a fixed redshift
specified by
zred
or theredshift
parameter ofget_mags
. See get_mags for details.  compute_light_ages – (default: False)
Flag specifying whether to compute light and massweighted ages. If
True
then the returned spectra are actually lightweighted ages (in Gyr) at every wavelength, the returned magnitudes are filter transmission weighted averages of these, thelog_lbol
attribute is the bolometric luminosity weighted age, and thestellar_mass
attribute gives the massweighted age.  nebemlineinspec – (default: True) Flag to include the emission line fluxes in the spectrum. Turning this off is a significant speedup in model calculation time. If not set, the line luminosities are still computed.
 smooth_velocity – (default: True)
Switch to choose smoothing in velocity space (
True
) or wavelength space.  smooth_lsf – (default: False)
Switch to apply smoothing of the SSPs by a wavelength dependent line
spread function. See the
set_lsf()
method for details. Only takes effect ifsmooth_velocity
is True.  cloudy_dust – (default: False) Switch to include dust in the Cloudy tables.
 agb_dust – (default: 1.0) Scales the circumstellar AGB dust emission.
 tpagb_norm_type –
(default: 2) Flag specifying TPAGB normalization scheme:
 0: default Padova 2007 isochrones
 1: Conroy & Gunn 2010 normalization
 2: Villaume, Conroy, Johnson 2015 normalization
 dell – (default: 0.0)
Shift in \(\log L_\mathrm{bol}\) of the TPAGB isochrones. Note
that the meaning of this parameter and the one below has changed to
reflect the updated calibrations presented in Conroy & Gunn (2009).
That is, these parameters now refer to a modification about the
calibrations presented in that paper. Only has effect if
tpagb_norm_type=1
.  delt – (default: 0.0)
Shift in \(\log T_\mathrm{eff}\) of the TPAGB isochrones. Only
has effect if
tpagb_norm_type=1
.  redgb – (default: 1.0) Modify weight given to RGB. Only available with BaSTI isochrone set.
 agb – (default: 1.0) Modify weight given to TPAGB. This only has effect for FSPS v3.1 or higher.
 fcstar – (default: 1.0) Fraction of stars that the Padova isochrones identify as Carbon stars that FSPS assigns to a Carbon star spectrum. Set this to 0.0 if for example the users wishes to turn all Carbon stars into regular Mtype stars.
 sbss – (default: 0.0) Specific frequency of blue straggler stars. See Conroy et al. (2009a) for details and a plausible range.
 fbhb – (default: 0.0) Fraction of horizontal branch stars that are blue. The blue HB stars are uniformly spread in \(\log T_\mathrm{eff}\) to \(10^4\) K. See Conroy et al. (2009a) for details and a plausible range.
 pagb – (default: 1.0) Weight given to the post–AGB phase. A value of 0.0 turns off postAGB stars; a value of 1.0 implies that the Vassiliadis & Wood (1994) tracks are implemented as–is.
 zred – (default: 0.0)
Redshift. If this value is nonzero and if
redshift_colors=1
, the magnitudes will be computed for the spectrum placed at redshiftzred
.  zmet – (default: 1)
The metallicity is specified as an integer ranging between 1 and nz. If
zcontinuous > 0
then this parameter is ignored.  logzsol – (default: 0.0)
Parameter describing the metallicity, given in units of \(\log
(Z/Z_\odot)\). Only used if
zcontinuous > 0
.  pmetals – (default: 2.0)
The power for the metallicty distribution function. The MDF is given by
\((Z \, e^{{Z}})^{{\mathrm{pmetals}}}\) where \(Z =
z/(z_\odot \, 10^{{\mathrm{logzsol}}})\) and z is the metallicity in
linear units (i.e., \(z_\odot = 0.019\)). Using a negative value
will result in smoothing of the SSPs by a threepoint triangular kernel
before linear interpolation (in \(\log Z\)) to the requested
metallicity. Only used if
zcontinuous = 2
.  imf_type –
(default: 2) Common variable defining the IMF type:
 0: Salpeter (1955)
 1: Chabrier (2003)
 2: Kroupa (2001)
 3: van Dokkum (2008)
 4: Dave (2008)
 5: tabulated piecewise power law IMF, specified in
imf.dat
file located in the data directory
 imf_upper_limit – (default: 120) The upper limit of the IMF, in solar masses. Note that if this is above the maximum mass in the isochrones then those stars will not contribute to the spectrum but will affect the overall IMF normalization.
 imf_lower_limit – (default: 0.08) The lower limit of the IMF, in solar masses. Note that if this is below the minimum mass in the isochrones then those stars will not contribute to the spectrum but will affect the overall IMF normalization.
 imf1 – (default: 1.3)
Logarithmic slope of the IMF over the range \(0.08 < M < 0.5
M_\odot\). Only used if
imf_type=2
.  imf2 – (default: 2.3)
Logarithmic slope of the IMF over the range \(0.5 < M < 1
M_\odot\). Only used if
imf_type=2
.  imf3 – (default: 2.3)
Logarithmic slope of the IMF over the range \(1.0 < M < imf\_upper\_limit
M_\odot\). Only used if
imf_type=2
.  vdmc – (default: 0.08)
IMF parameter defined in van Dokkum (2008). Only used if
imf_type=3
.  mdave – (default: 0.5)
IMF parameter defined in Dave (2008). Only used if
imf_type=4
.  evtype – (default: 1) Compute SSPs for only the given evolutionary type. All phases used when set to 1.
 masscut – (default: 150.0) Truncate the IMF above this value.
 sigma_smooth – (default: 0.0) If smooth_velocity is True, this gives the velocity dispersion in km/s. Otherwise, it gives the width of the gaussian wavelength smoothing in Angstroms. These widths are in terms of \(\sigma\), not FWHM.
 min_wave_smooth – (default: 1e3) Minimum wavelength to consider when smoothing the spectrum.
 max_wave_smooth – (default: 1e4) Maximum wavelength to consider when smoothing the spectrum.
 gas_logu – (default: 2) Log of the gas ionization parameter; relevant only for the nebular emission model.
 gas_logz – (default: 0.0) Log of the gasphase metallicity; relevant only for the nebular emission model. In units of \(\log (Z/Z_\odot)\).
 igm_factor – (default: 1.0) Factor used to scale the IGM optical depth.
 sfh –
(default: 0) Defines the type of star formation history, normalized such that one solar mass of stars is formed over the full SFH. Default value is 0.
 0: Compute an SSP.
 1: Taumodel. A six parameter SFH (tau model plus a constant
component and a burst) with parameters
tau
,const
,sf_start
,sf_trunc
,tburst
, andfburst
(see below).  2: This option is not supported in PythonFSPS.
 3: Compute a tabulated SFH, which is supplied through the
set_tabular_sfh
method. See that method for details.  4: Delayed taumodel. This is the same as option 1 except that the taumodel component takes the form \(t\,e^{−t/\tau}\).
 5: Delayed taumodel with a transition at a time
sf_trunc
to a linearly decreasing SFH with the slope specified bysf_slope
. See Simha et al. 2014 for details.
 tau – (default: 1.0)
Defines efolding time for the SFH, in Gyr. Only used if
sfh=1
orsfh=4
. The range is \(0.1 < \tau < 10^2\).  const – (default: 0.0)
Defines the constant component of the SFH. This quantity is defined as
the fraction of mass formed in a constant mode of SF; the range is
therefore \(0 \le C \le 1\). Only used if
sfh=1
orsfh=4
.  sf_start – (default: 0.0)
Start time of the SFH, in Gyr. Only used if
sfh=1
orsfh=4
orsfh=5
.  sf_trunc – (default: 0.0)
Truncation time of the SFH, in Gyr. If set to 0.0, there is no
trunction. Only used if
sfh=1
orsfh=4
orsfh=5
.  tage – (default: 0.0)
If set to a nonzero value, the
fsps.StellarPopulation.compute_csp()
method will compute the spectra and magnitudes only at this age, and will therefore only output one age result. The units are Gyr. (The default is to compute and return results from \(t \approx 0\) to the maximum age in the isochrones).  fburst – (default: 0.0)
Deﬁnes the fraction of mass formed in an instantaneous burst of star
formation. Only used if
sfh=1
orsfh=4
.  tburst – (default: 11.0)
Defines the age of the Universe when the burst occurs. If
tburst > tage
then there is no burst. Only used ifsfh=1
orsfh=4
.  sf_slope – (default: 0.0)
For
sfh=5
, this is the slope of the SFR after timesf_trunc
.  dust_type –
(default: 0) Common variable deﬁning the extinction curve for dust around old stars:
 0: power law with index dust index set by
dust_index
.  1: Milky Way extinction law (with the \(R = A_V /E(B  V)\) value
given by
mwr
) parameterized by Cardelli et al. (1989), with variable UV bump strength (seeuvb
below).  2: Calzetti et al. (2000) attenuation curve. Note that if this value
is set then the dust attenuation is applied to all starlight equally
(not split by age), and therefore the only relevant parameter is
dust2
, which sets the overall normalization (you must setdust1=0.0
for this to work correctly).  3: allows the user to access a variety of attenuation curve models
from Witt & Gordon (2000) using the parameters
wgp1
andwgp2
. In this case the parametersdust1
anddust2
have no effect because the WG00 models specify the full attenuation curve.  4: Kriek & Conroy (2013) attenuation curve. In this model the slope
of the curve, set by the parameter
dust_index
, is linked to the strength of the UV bump.
 0: power law with index dust index set by
 dust_tesc – (default: 7.0)
Stars younger than
dust_tesc
are attenuated by bothdust1
anddust2
, while stars older are attenuated bydust2
only. Units are \(\log (\mathrm{yrs})\).  dust1 – (default: 0.0)
Dust parameter describing the attenuation of young stellar light,
i.e. where
t <= dust_tesc
(for details, see Conroy et al. 2009a).  dust2 – (default: 0.0)
Dust parameter describing the attenuation of old stellar light,
i.e. where
t > dust_tesc
(for details, see Conroy et al. 2009a).  dust_clumps – (default: 99.) Dust parameter describing the dispersion of a Gaussian PDF density distribution for the old dust. Setting this value to 99.0 sets the distribution to a uniform screen. See Conroy et al. (2009b) for details. Values other than 99 are no longer supported.
 frac_nodust – (default: 0.0)
Fraction of starlight that is not attenuated by the diffuse dust
component (i.e. that is not affected by
dust2
).  frac_obrun – (default: 0.0)
Fraction of the young stars (age < dust_tesc) that are not attenuated
by
dust1
, representing runaway OB stars. These stars are still attenuated bydust2
.  dust_index – (default: 0.7)
Power law index of the attenuation curve. Only used when
dust_type=0
.  dust1_index – (default: 1.0)
Power law index of the attenuation curve affecting stars younger than
dust_tesc corresponding to
dust1
. Only used whendust_type=0
.  mwr – (default: 3.1)
The ratio of total to selective absorption which characterizes the MW
extinction curve: \(R = A_V /E(B  V)\). Only used when
dust_type=1
.  uvb – (default: 1.0)
Parameter characterizing the strength of the 2175A extinction feature
with respect to the standard Cardelli et al. determination for the
MW. Only used when
dust_type=1
.  wgp1 – (default: 1)
Integer specifying the optical depth in the Witt & Gordon (2000)
models. Values range from 1 − 18, corresponding to optical depths of
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, 10.0. Note that these optical
depths are defined differently from the optical depths defined by
the parameters
dust1
anddust2
. See Witt & Gordon (2000) for details.  wgp2 – (default: 1) Integer specifying the type of largescale geometry and extinction curve. Values range from 16, corresponding to MW+dusty, MW+shell, MW+cloudy, SMC+dusty, SMC+shell, SMC+cloudy. Dusty, shell, and cloudy specify the geometry and are described in Witt & Gordon (2000).
 wgp3 – (default: 1) Integer specifying the local geometry for the Witt & Gordon (2000) dust models. A value of 0 corresponds to a homogeneous distribution, and a value of 1 corresponds to a clumpy distribution. See Witt & Gordon (2000) for details.
 duste_gamma – (default: 0.01) Parameter of the Draine & Li (2007) dust emission model. Specifies 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}\). Allowable range is 0.0 – 1.0.
 duste_umin – (default: 1.0) Parameter of the Draine & Li (2007) dust emission model. Specifies the minimum radiation field strength in units of the MW value. Valid range is 0.1 – 25.0.
 duste_qpah – (default: 3.5) Parameter of the Draine & Li (2007) dust emission model. Specifies the grain size distribution through the fraction of grain mass in PAHs. This parameter has units of % and a valid range of 0.0 − 10.0.
 fagn – (default: 0.0) The total luminosity of the AGN, expressed as a fraction of the bolometric stellar luminosity (so it can be greater than 1). The shape of the AGN SED is from the Nenkova et al. 2008 templates.
 agn_tau – (default: 10) Optical depth of the AGN dust torus, which affects the shape of the AGN SED. Outside the range (5, 150) the AGN SED is an extrapolation.

dust_mass
¶ Dust mass, in solar masses.

emline_luminosity
¶ emission line luminosities, in \(L_\odot\). shape=(ne)

emline_wavelengths
¶ Emission line wavelengths, in \(\AA\)

filter_data
()¶ Return effective wavelengths, and vega and solar magnitudes of all filters.
Returns lambda_eff: Effective wavelength of each filter. Returns magvega: The AB magnitude of Vega (used to convert between AB and Vega systems). Returns magsun: The AB absolute magnitude of the Sun.

formed_mass
¶ Integral of the SFH, in solar masses.

get_mags
(zmet=None, tage=0.0, redshift=None, bands=None)¶ Get the magnitude of the CSP.
Parameters:  zmet – (default: None)
The (integer) index of the metallicity to use. By default, use the
current value of
self.params["zmet"]
.  tage – (default: 0.0) The age of the stellar population. By default, this will compute a grid of ages from \(t pprox 0\) to the maximum age in the isochrones.
 redshift – (default: None)
Optionally redshift the spectrum first. If not supplied, the
redshift given by
StellarPopulation.params["zred"]
is assumed. If supplied, the value ofzred
is ignored (and IGM attenuation will not work properly).  bands – (default: None)
The names of the filters that you would like to compute the
magnitude for. This should correspond to the result of
fsps.find_filter()
.
Returns mags: The magnitude grid. If an age was was provided by the
tage
parameter then the result is a 1D array withNBANDS
values. Otherwise, it is a 2D array with shape(NTFULL, NBANDS)
. If a particular set of bands was requested then this return value will be properly compressed along that axis, ordered according to thebands
argument. Ifredshift
is not 0, the units are apparent observed frame magnitude \(m\) assuming \(\Omega_m=0.3, \Omega_\Lambda=0.7\) zmet – (default: None)
The (integer) index of the metallicity to use. By default, use the
current value of

get_spectrum
(zmet=None, tage=0.0, peraa=False)¶ Return spectra for the current CSP.
Parameters:  zmet – (default: None)
The (integer) index of the metallicity to use. By default, use
the current value of
self.params["zmet"]
.  tage – (default: 0.0) The age of the stellar population for which to obtain a spectrum. By default, this will compute a grid of ages from \(t \approx 0\) to the maximum age in the isochrones.
 peraa – (default: False)
If
True
, return the spectrum in \(L_\odot/\AA\). Otherwise, return the spectrum in the FSPS standard \(L_\odot/\mathrm{Hz}\).
Returns wavelengths: The wavelength grid in Angstroms.
Returns spectrum: The spectrum in \(L_\odot/\mathrm{Hz}\) or \(L_\odot/\AA\). If an age was provided by the
tage
parameter then the result is a 1D array withNSPEC
values. Otherwise, it is a 2D array with shape(NTFULL, NSPEC)
. zmet – (default: None)
The (integer) index of the metallicity to use. By default, use
the current value of

isoc_library
¶ The name of the isochrone library being used in FSPS.

isochrones
(outfile=u'pyfsps_tmp')¶ Write the isochrone data (age, mass, weights, phases, magnitudes, etc.) to a .cmd file, then read it into a huge numpy array.
Parameters: outfile – (default: ‘pyfsps_tmp’) The file root name of the .cmd file, which will be placed in the $SPS_HOME/OUTPUTS/ directory
Returns dat: A huge numpy structured array containing information about every isochrone point for the current metallicity. In general the columns may be isochrone specific, but for Padova they are
 age: log age, yrs
 log(Z): log metallicity
 mini: initial stellar mass in solar masses
 mact: actual stellar mass (accounting for mass loss)
 logl: log bolometric luminosity, solar units
 logt: log temperature (K)
 logg: log gravity
 phase: (see evtype)
 log(weight): IMF weight
 log(mdot): mass loss rate (Msol/yr)

log_age
¶ log10(age/yr).

log_lbol
¶ log(bolometric luminosity / \(L_\odot\)).

set_lsf
(wave, sigma, wmin=None, wmax=None)¶ Set a wavelength dependent Gaussian linespread function that will be applied to the SSPs. Only takes effect if
smooth_lsf
andsmooth_velocity
are True.Parameters:  wave – Wavelength in angstroms, sorted ascending. If wmin or wmax are not specified they are taken from the minimum and maximum of this array. ndarray.
 sigma – The dispersion of the Gaussian LSF at the wavelengths given by wave, in km/s. If 0, no smoothing is applied at that wavelength. ndarray of same shape as wave.
 wmin – (optional) The minimum wavelength (in AA) for which smoothing will be applied. If not given, it is taken from the minimum of wave.
 wmax – (optional) The maximum wavelength (in AA) for which smoothing will be applied. If not given, it is taken from the maximum of wave.

set_tabular_sfh
(age, sfr, Z=None)¶ Set a tabular SFH for use with the
sfh=3
option. See the FSPS documentation for information about tabular SFHs. This SFH will be piecewise linearly interpolated.Parameters:  age – Time since the beginning of the universe in Gyr. Must be increasing. ndarray of shape (ntab,)
 sfr – The SFR at each
age
, in Msun/yr. Must be an ndarray same length asage
, and contain at least one nonzero value.  Z – (optional) The metallicity at each age, in units of absolute metallicity (e.g. Z=0.019 for solar with the Padova isochrones and MILES stellar library).

sfr
¶ Star formation rate (\(M_\odot/yr\)).

sfr_avg
(times=None, dt=0.1)¶ The average SFR between
time
dt
andtime
, given the SFH parameters, forsfh=1
orsfh=4
. Like SFHSTAT in FSPS. Requires scipy, as it uses gamma functions.Parameters:  times – (default, None)
The times (in Gyr of cosmic time) at which the average SFR over the
last
dt
is desired. ifNone
, uses the current value of thetage
in the parameter set. Scalar or iterable.  dt – (default: 0.1) The time interval over which the recent SFR is averaged, in Gyr. defaults to 100 Myr (i.e. sfr8).
Returns sfr_avg: The SFR at
tage
averaged over the lastdt
Gyr, in units of solar masses per year, such that \(1 M_\odot\) formed bytage
. Same shape astimes
. Fortimes < sf_start + dt
the value ofsfr_avg
isnan
, fortimes > tage
the value is 0. times – (default, None)
The times (in Gyr of cosmic time) at which the average SFR over the
last

smoothspec
(wave, spec, sigma, minw=None, maxw=None)¶ Smooth a spectrum by a gaussian with standard deviation given by sigma. Whether the smoothing is in velocity space or in wavelength space depends on the value of the value of smooth_velocity.
Parameters:  wave – The input wavelength grid.
 spec – The input spectrum.
 sigma – The standard deviation of the gaussian broadening function.
 minw – Optionally set the minimum wavelength to consider when broadening.
 maxw – Optionally set the maximum wavelength to consider when broadening.
Returns outspec: The smoothed spectrum, on the same wavelength grid as the input.

spec_library
¶ The name of the spectral library being used in FSPS.

ssp_ages
¶ The age grid of the SSPs, in log(years), used by FSPS.

stellar_mass
¶ Surviving stellar mass in solar masses (including remnants if the FSPS parameter
add_stellar_remants=1
).

wavelengths
¶ The wavelength scale for the computed spectra, in \(\AA\)

zlegend
¶ The available metallicities.
 compute_vega_mags – (default: False)
A switch that sets the zero points of the magnitude system: