Modules for storing and operating on astronomical source spectral energy distributions.
sedpy
is pip installable:
python -m pip install astro-sedpy
Or you can install the latest version from github:
git clone https://github.com/bd-j/sedpy
cd sedpy
pip install .
Then in python, e.g.,
from sedpy import observate
# get magnitude from a spectrum:
filt = observate.Filter("sdss_r0")
mag = filt.ab_mag(angstroms, f_lambda_cgs)
# or get several magnitudes at once
filterlist = observate.load_filters(["galex_NUV", "sdss_r0"])
mags = observate.getSED(angstroms, f_lambda_cgs, filterlist=filters)
For the filters available by default see the filter_list. For adding transmission curves, see these docs.
This code can be referenced as:
observate
has methods for generating synthetic photometry through any filters, and classes for dealing with filters generally. There is some functionality for spectra (vaccum to air conversions). With a huge debt to Mike Blanton's kcorrect code .attenuation
contains simple dust attenuation methods.smoothing
methods for smoothing well-sampled spectra.extinction
(Deprecated) classes for a detailed modeling of extinction curves, following the Fitzpatrick & Massa parameterizations. See dust_extinction instead.