skyscapes.background.leinert#
Zodiacal light model based on Leinert et al. (1998).
All functions are pure JAX and JIT-compatible. Provides both position-dependent (Leinert Table 17) and wavelength-dependent (Table 19) zodiacal brightness.
Migrated from orbix.observatory.zodiacal – see that module’s history for full references.
Attributes#
Functions#
|
Log10(wavelength in um), clamped to the tabulated Table 19 range. |
|
Fill near-Sun exclusion cells with the nearest valid value. |
|
Wavelength-dependent color correction from Leinert Table 19. |
|
Position-dependent zodiacal brightness factor from Leinert Table 17. |
|
Zodiacal spectral radiance in W/(m^2 sr um) from Leinert tables. |
|
Zodiacal surface brightness in mag/arcsec^2 from Leinert tables. |
|
AYO-default zodiacal brightness: 22 mag/arcsec^2 at V with color correction. |
|
AYO-default zodiacal brightness in Jy/arcsec^2. |
|
Create zodiacal light spectrum in Jy/arcsec^2 from reference flux. |
Module Contents#
- skyscapes.background.leinert.AYO_DEFAULT_ZODI_MAG_V = 22.0#
- skyscapes.background.leinert.V_BAND_WAVELENGTH_NM = 550.0#
- skyscapes.background.leinert.LEINERT_BETA_DEG#
- skyscapes.background.leinert.LEINERT_SOLAR_LON_DEG#
- skyscapes.background.leinert.LEINERT_TABLE17#
- skyscapes.background.leinert.LEINERT_WAVELENGTH_UM#
- skyscapes.background.leinert.LEINERT_B_LAMBDA#
- skyscapes.background.leinert._LOG_WAVELENGTH_UM#
- skyscapes.background.leinert._LOG_B_LAMBDA#
- skyscapes.background.leinert._clamped_log10_um(wavelength_nm)[source]#
Log10(wavelength in um), clamped to the tabulated Table 19 range.
interpax.interp1d defaults to extrap=False (NaN outside the knot range); clamping the query wavelength to the table’s domain before interpolating means a wavelength outside Table 19’s 0.2-140 um span resolves to the nearest tabulated edge value instead of NaN.
- skyscapes.background.leinert._fill_sentinels(table)[source]#
Fill near-Sun exclusion cells with the nearest valid value.
Sentinel cells (-1) are filled along the elongation axis so lookups clamp instead of returning NaN.
- skyscapes.background.leinert._LEINERT_TABLE17_FILLED#
- skyscapes.background.leinert._REF_IDX#
- skyscapes.background.leinert._REFERENCE_VALUE#
- skyscapes.background.leinert._NORMALIZED_TABLE17#
- skyscapes.background.leinert.zodi_color_correction(wavelength_nm, reference_wavelength_nm=V_BAND_WAVELENGTH_NM, photon_units=True)[source]#
Wavelength-dependent color correction from Leinert Table 19.
- Args:
wavelength_nm: Target wavelength in nm. reference_wavelength_nm: Reference wavelength in nm. photon_units: If True, include lambda/lambda_ref factor for photon flux.
- Returns:
Flux ratio (target / reference).
- skyscapes.background.leinert.leinert_zodi_factor(ecliptic_lat_deg, solar_lon_deg=135.0)[source]#
Position-dependent zodiacal brightness factor from Leinert Table 17.
Returns brightness relative to (solar_lon=90 deg, ecliptic_lat=0 deg).
Queries inside the near-Sun exclusion zone return the nearest tabulated brightness (clamped), not NaN.
- Args:
ecliptic_lat_deg: Ecliptic latitude in degrees. solar_lon_deg: Solar longitude in degrees (default 135 deg for coronagraphs).
- Returns:
Dimensionless brightness factor.
- skyscapes.background.leinert.leinert_zodi_spectral_radiance(wavelength_nm, ecliptic_lat_deg=0.0, solar_lon_deg=135.0)[source]#
Zodiacal spectral radiance in W/(m^2 sr um) from Leinert tables.
- Args:
wavelength_nm: Observation wavelength in nm. ecliptic_lat_deg: Ecliptic latitude in degrees. solar_lon_deg: Solar longitude in degrees.
- Returns:
Spectral radiance in W/(m^2 sr um).
- skyscapes.background.leinert.leinert_zodi_mag(wavelength_nm, ecliptic_lat_deg=0.0, solar_lon_deg=135.0)[source]#
Zodiacal surface brightness in mag/arcsec^2 from Leinert tables.
- Args:
wavelength_nm: Observation wavelength in nm. ecliptic_lat_deg: Ecliptic latitude in degrees. solar_lon_deg: Solar longitude in degrees.
- Returns:
Surface brightness in mag/arcsec^2.
- skyscapes.background.leinert.ayo_default_zodi_mag(wavelength_nm)[source]#
AYO-default zodiacal brightness: 22 mag/arcsec^2 at V with color correction.
- Args:
wavelength_nm: Observation wavelength in nm.
- Returns:
Surface brightness in mag/arcsec^2.
- skyscapes.background.leinert.ayo_default_zodi_flux_jy(wavelength_nm)[source]#
AYO-default zodiacal brightness in Jy/arcsec^2.
The AYO 22 mag V-band figure is treated as AB and converted via hwoutils.conversions.mag_to_flux_jy (astropy-exact AB zero point). If a Johnson-V calibration is ever required, the AB<->Johnson-V offset is ~0.044 mag.
- Args:
wavelength_nm: Observation wavelength in nm.
- Returns:
Surface brightness in Jy/arcsec^2.
- skyscapes.background.leinert.create_zodi_spectrum_jax(wavelengths_nm, reference_flux_jy=None, reference_wavelength_nm=V_BAND_WAVELENGTH_NM)[source]#
Create zodiacal light spectrum in Jy/arcsec^2 from reference flux.
- Args:
wavelengths_nm: Array of wavelengths in nm. reference_flux_jy: Reference flux (default: 22 mag at V). reference_wavelength_nm: Reference wavelength in nm.
- Returns:
Array of surface brightness in Jy/arcsec^2.