lfkit.api.corrections#
Unified k- and e-correction interface.
This module is the user-facing entry point for LFKit photometric corrections. It provides a small, stable API for evaluating:
k(z) bandpass (k-) correction e(z) luminosity evolution (e-) correction ke(z) combined correction, ke(z) = k(z) + e(z)
Design goals#
Keep the runtime API minimal and stable: k(z), e(z), ke(z)
- Make backend choices explicit and composable:
k(z) backend: “poggianti” or “kcorrect”
e(z) backend: “none” or “poggianti”
- Use astronomy-friendly inputs at the public boundary:
filterset: “sdss”, “hsc”, “decam”, “bessell”, …
band: “r”, “i”, “V”, …
Poggianti uses a typed table key (gal_type)
kcorrect uses an SED mixture specified by a color anchor
Reality check about kcorrect#
kcorrect returns k(z) for a chosen SED mixture and filter response. It does not encode physical luminosity evolution by itself. If you want e(z), you supply a separate evolution model (for example from Poggianti tabulations), and LFKit combines them consistently.
Sign convention#
Absolute magnitude is defined as:
M = m - DM(z) - k(z) + e(z)
With this convention, if galaxies were brighter in the past, then e(z) is typically negative for z > z_piv in pivoted evolution models.
Notes on filter names and kcorrect responses#
In LFKit the public choice of a band is expressed as (filterset, band). kcorrect internally uses response curve identifiers (file stems). LFKit maps:
(filterset, band) -> response_name
You can override or extend this mapping via response_map when working with
custom surveys or custom filter curves.
Classes
|
Evaluator for k(z), e(z), and ke(z). |