Modules for storing and operating on astronomical source spectral energy distributions.
sedpy is pip installable:
python -m pip install astro-sedpyOr 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:
observatehas 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 .attenuationcontains simple dust attenuation methods.smoothingmethods for smoothing well-sampled spectra.extinction(Deprecated) classes for a detailed modeling of extinction curves, following the Fitzpatrick & Massa parameterizations. See dust_extinction instead.