darkhistory.electrons.ics.ics_spectrum.rel_spec¶
-
darkhistory.electrons.ics.ics_spectrum.
rel_spec
(eleceng, photeng, T, inf_upp_bound=False, as_pairs=False)¶ Relativistic ICS spectrum of secondary photons.
Parameters: - eleceng : ndarray
Incoming electron energy.
- photeng : ndarray
Outgoing photon energy.
- T : float
CMB temperature.
- inf_upp_bound : bool
If True, calculates the approximate spectrum that is used for fast interpolation over different values of T. See Notes for more details. Default is False.
- as_pairs : bool
If true, treats eleceng and photeng as a paired list: produces eleceng.size == photeng.size values. Otherwise, gets the spectrum at each photeng for each eleceng, returning an array of length eleceng.size*photeng.size.
Returns: - TransFuncAtRedshift or ndarray
dN/(dt dE) of the outgoing photons (dt = 1 s). If as_pairs == False, returns a TransFuncAtRedshift, with abscissa given by (eleceng, photeng). Otherwise, returns an ndarray, with abscissa given by each pair of (eleceng, photeng).
See also
Notes
This function accepts the energy of the electron as one of the arguments and not the kinetic energy, unlike the other related ICS functions.
The flag
inf_upp_bound
determines whether an approximation is taken that only gets the shape of the spectrum correct for \(E_{\gamma,\text{final}} \gtrsim T_\text{CMB}\). This is sufficient from an energy conservation perspective, and is used for building a table that can be interpolated over different values of T quickly.If
inf_upp_bound == False
, the spectrum up to \(\mathcal{O}(1/\gamma^2)\) corrections is given. This is a combination of the spectrum derived in Eq. (2.48) of Ref. [1]_ and Eq. (9) of Ref. [2]_, which assumes that electrons only lose energy, and Eq. (8) of Ref. [2]_, which contains the spectrum of photons produced electrons getting upscattered.