darkhistory.history.tla.get_history¶
- darkhistory.history.tla.get_history(rs_vec, init_cond=None, baseline_f=False, inj_particle=None, f_H_ion=None, f_H_exc=None, f_heating=None, DM_process=None, mDM=None, sigmav=None, lifetime=None, struct_boost=None, injection_rate=None, reion_switch=False, reion_rs=None, photoion_rate_func=None, photoheat_rate_func=None, xe_reion_func=None, helium_TLA=False, f_He_ion=None, mxstep=1000, rtol=0.0001)¶
Returns the ionization and thermal history of the IGM.
- Parameters:
- rs_vecndarray
Abscissa for the solution.
- init_condarray, optional
Array containing [initial temperature, initial xHII, initial xHeII, initial xHeIII]. Defaults to standard values if None.
- baseline_fbool
If True, uses the baseline f values with no backreaction returned by
f_std(). Default is False.- inj_particle{‘elec’, ‘phot’}, optional
Specifies which set of f to use: electron/positron or photon.
- f_H_ionfunction or float, optional
f(rs, x_HI, x_HeI, x_HeII) for hydrogen ionization. Treated as constant if float.
- f_H_excfunction or float, optional
f(rs, x_HI, x_HeI, x_HeII) for hydrogen Lyman-alpha excitation. Treated as constant if float.
- f_heatingfunction or float, optional
f(rs, x_HI, x_HeI, x_HeII) for heating. Treated as constant if float.
- DM_process{‘swave’, ‘decay’}, optional
Dark matter process to use. Default is None.
- sigmavfloat, optional
Thermally averaged cross section for
DM_process == 'swave'. Default is None.- lifetimefloat, optional
Decay lifetime for
DM_process == 'decay'. Default is None.- struct_boostfunction, optional
Energy injection boost factor due to structure formation. Default is None.
- injection_ratefunction or float, optional
Injection rate of DM as a function of redshift. Treated as constant if float. Default is None.
- reion_switchbool
Reionization model included if True.
- reion_rsfloat, optional
Redshift 1+z at which reionization effects turn on.
- photoion_rate_functuple of functions, optional
Functions take redshift 1+z as input, return the photoionization rate in s^-1 of HI, HeI and HeII respectively. If not specified, defaults to darkhistory.history.reionization.photoion_rate.
- photoheat_rate_functuple of functions, optional
Functions take redshift 1+z as input, return the photoheating rate in s^-1 of HI, HeI and HeII respectively. If not specified, defaults to darkhistory.history.reionization.photoheat_rate.
- xe_reion_funcfunction, optional
Specifies a fixed ionization history after reion_rs.
- helium_TLAbool, optional
Specifies whether to track helium before reionization.
- f_He_ionfunction or float, optional
f(rs, x_HI, x_HeI, x_HeII) for helium ionization. Treated as constant if float. If None, treated as zero.
- mxstepint, optional
The maximum number of steps allowed for each integration point. See scipy.integrate.odeint for more information.
- rtolfloat, optional
The relative error of the solution. See scipy.integrate.odeint for more information.
- Returns:
- list of ndarray
[temperature solution (in eV), xHII solution, xHeII, xHeIII].
Notes
The actual differential equation that we solve is expressed in terms of y = arctanh(f*(x - f)), where f = 0.5 for x = xHII, and f = nHe/nH * 0.5 for x = xHeII or xHeIII, where nHe/nH is approximately 0.083.
