zeus21.SED
SEDs and Green’s functions for first-galaxy emission models.
- Authors: zeus21 v2 collaboration - June 2026
Emily Bregou ; Hector Afonso G. Cruz ; Sarah Libanore ; Julian B. Muñoz ; Yonny Sklansky ; Emilie Thélie ; Alessandra Venditti
arXiv:2302.08506, arXiv:2306.09403, arXiv:2407.18294, Sklansky et al. (in prep)
Functions
|
X-ray SED for Pop II or Pop III sources. |
|
Lyman-alpha continuum SED for Pop II or Pop III sources. |
|
UV luminosity Green's function for a 1 M☉/yr instantaneous burst at some time t. |
|
Returns the selection function from t1 to t2, to keep t1 < t < t2 smoothly |
|
Age in Myr, window in erg/s/Msun for the short timescale LUV window |
|
Age in Myr, window in erg/s/Msun for the long timescale LUV window |
|
Hα luminosity Green's function for a 1 M☉/yr instantaneous burst at some past time t. |
Module Contents
- zeus21.SED.SED_XRAY(AstroParams, En, pop=0)[source]
X-ray SED for Pop II or Pop III sources.
Normalized so that ∫_{E0}^{Emax} E · SED(E) dE = 1, i.e. E·SED is a power law with index alpha_xray. The function returns the photon number spectrum (divided by E at the end).
The high-energy cutoff is intentionally omitted because photons redshift down into the <2 keV observing band.
- Parameters:
AstroParams (object) – Must expose: alpha_xray, alpha_xray_III, E0_xray, Emax_xray_norm.
En (float or array-like) – Photon energy in eV.
pop ({2, 3}) – Stellar population. 2 = Pop II, 3 = Pop III.
- Returns:
SED in units of eV⁻¹, same shape as En. Zero below E0_xray.
- Return type:
ndarray
- zeus21.SED.SED_LyA(nu_in, pop=0)[source]
Lyman-alpha continuum SED for Pop II or Pop III sources.
- A two-segment power law in frequency, joined at ν_LyB:
νLyA ≤ ν < νLyB : index indexbelow (flatter)
νLyB ≤ ν < νLyCont: index indexabove (steeper)
Normalized so that ∫_{νLyA}^{νLyCont} SED(ν) dν = 1 (photon number per unit frequency). Contrast with SED_XRAY, which normalizes E·SED.
- Parameters:
nu_in (float or array-like) – Frequency in the same units as constants.freqLyA / freqLyCont.
pop ({2, 3}) – Stellar population. Uses BL05 stellar spectra as reference. Pop II: amps = [0.68, 0.32], Pop III: amps = [0.56, 0.44].
- Returns:
SED value(s), same shape as nu_in. Zero outside [νLyA, νLyCont).
- Return type:
ndarray
- zeus21.SED.Greens_function_LUV(AstroParams, ageMyrin, Mhalos)[source]
UV luminosity Green’s function for a 1 M☉/yr instantaneous burst at some time t.
- Convolve with SFR(t) to get L_UV(t):
L_UV(t) = ∫ G_UV(t - t’) · SFR(t’) dt’
The shape is a double-power-law in age (fast rise, slow decline) with a Gaussian bump at very young ages (~2–4 Myr) capturing the brief Wolf-Rayet and OB-supergiant phase. A Gaussian exponential cutoff suppresses contributions beyond ~650–1100 Myr depending on the SED model.
- Parameters:
AstroParams (object) – Must choose SEDMODEL ∈ {‘bagpipes’, ‘BPASS’, ‘BPASS_binaries’}.
ageMyrin (float or array-like, shape (Nt,)) – Stellar population age in Myr. A small offset (1e-4 Myr) is added internally to avoid division by zero at age = 0.
Mhalos (array-like, shape (NMh,)) – Halo masses in M☉. Currently enter only through IMFZcorrection, which is unity for UV (correction absorbed into ε*).
- Returns:
Green’s function in erg s⁻¹ M☉⁻¹.
- Return type:
ndarray, shape (NMh, Nt)
- zeus21.SED.Selection_Timescales_LUV(times, time1, time2)[source]
Returns the selection function from t1 to t2, to keep t1 < t < t2 smoothly
- zeus21.SED.Greens_function_LUV_Short(AstroParams, time, mass)[source]
Age in Myr, window in erg/s/Msun for the short timescale LUV window
- zeus21.SED.Greens_function_LUV_Long(AstroParams, time, mass)[source]
Age in Myr, window in erg/s/Msun for the long timescale LUV window
- zeus21.SED.Greens_function_LHa(AstroParams, ageMyrin, Mhalos)[source]
Hα luminosity Green’s function for a 1 M☉/yr instantaneous burst at some past time t.
Analogous to Greens_function_LUV but for the Hα recombination line. Hα traces ionizing photons and therefore falls off much faster with age (~few Myr vs. ~Gyr for UV). For BPASS_binaries there is a second component at ~20 Myr to account for delayed ionizing flux.
The IMF/metallicity correction scales with halo mass as a power law, clamped to [0.1, 10] to prevent runaway corrections.
- Parameters:
AstroParams (object) – Must expose: SEDMODEL, normLHa_ZIMF, alphanormLHa_ZIMF.
ageMyrin (float or array-like, shape (Nt,)) – Stellar population age in Myr.
Mhalos (array-like, shape (NMh,)) – Halo masses in M☉. Used in the IMF/Z mass-dependent correction.
- Returns:
Green’s function in erg s⁻¹ M☉⁻¹.
- Return type:
ndarray, shape (NMh, Nt)