Provides individual Passband class, which can be bundled up in a PassbandGroup class
Passband:
holds metadata relevant to that passband (eg, label="u", survey="LSST")
holds data such as the passband's transmission table (and handles the loading/downloading required for this)
holds all of the equations referenced from the LSST Flux Units paper
PassbandGroup:
holds all of the Passbands
can be initialized with presets such as "LSST", which automatically constructs the appropriate Passband objects
provides a fluxes_to_bandfluxes method to easily generate all bandfluxes at once for a given flux density matrix
Disclaimers
This PR will be followed up with interpolation and exterpolation utilities.
Note the checks in the beginning of Passband's fluxes_to_bandflux--this will soon be made much more robust than it is now.
The downloading functionality is intentionally minimal.
Current download method will be replaced when implementing a Pooch-based data manager; so, only a very basic example of downloading LSST bands from the SVO website was provided, mainly as a matter of convenience during development.
For #61
Summary
Passband
class, which can be bundled up in aPassbandGroup
classPassband
:PassbandGroup
:Passband
sPassband
objectsfluxes_to_bandfluxes
method to easily generate all bandfluxes at once for a given flux density matrixDisclaimers
Passband
'sfluxes_to_bandflux
--this will soon be made much more robust than it is now.