SciPy

darkhistory.history.tla.get_history

darkhistory.history.tla.get_history(rs_vec, init_cond=None, baseline_f=False, baseline_struct=False, inj_particle=None, f_H_ion=None, f_H_exc=None, f_heating=None, DM_process=None, mDM=None, sigmav=None, lifetime=None, z_td=None, struct_boost=None, injection_rate=None, reion_switch=False, reion_rs=None, reion_method=None, heat_switch=False, DeltaT=0, alpha_bk=1.0, 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_vec : ndarray

Abscissa for the solution.

init_cond : array, optional

Array containing [initial temperature, initial xHII, initial xHeII, initial xHeIII]. Defaults to standard values if None.

baseline_f : bool

If True, uses the baseline f values with no backreaction returned by f_std(). Default is False.

baseline_struct : bool

If True, uses the default structure formation with the baseline f values. Default is False.

inj_particle : {‘elec’, ‘phot’}, optional

Specifies which set of f to use: electron/positron or photon.

f_H_ion : function or float, optional

f(rs, x_HI, x_HeI, x_HeII) for hydrogen ionization. Treated as constant if float.

f_H_exc : function or float, optional

f(rs, x_HI, x_HeI, x_HeII) for hydrogen Lyman-alpha excitation. Treated as constant if float.

f_heating : function 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.

sigmav : float, optional

Thermally averaged cross section for DM_process == 'swave'. Default is None.

lifetime : float, optional

Decay lifetime for DM_process == 'decay'. Default is None.

struct_boost : function, optional

Energy injection boost factor due to structure formation. Default is None.

injection_rate : function or float, optional

Injection rate of DM as a function of redshift. Treated as constant if float. Default is None.

reion_switch : bool

Reionization model included if True.

reion_rs : float, optional

Redshift 1+z at which reionization effects turn on.

reion_method : {‘Puchwein’, ‘early’, ‘middle’, ‘late’}, optional

Specify which reionization model

heat_switch : True or False, optional

If True, include photoheating from reionization sources; if False, only include photoionization.

photoion_rate_func : tuple of functions, optional

Functions take redshift 1+z as input, return the photoionization rate in s-1of HI, HeI and HeII respectively. If not specified, defaults to darkhistory.history.reionization.photoion_rate.

photoheat_rate_func : tuple of functions, optional

Functions take redshift 1+z as input, return the photoheating rate in eV s-1of HI, HeI and HeII respectively. If not specified, defaults to darkhistory.history.reionization.photoheat_rate.

xe_reion_func : function, optional

Specifies a fixed ionization history after reion_rs. The argument of this function should be a float.

helium_TLA : bool, optional

Specifies whether to track helium before reionization.

f_He_ion : function or float, optional

f(rs, x_HI, x_HeI, x_HeII) for helium ionization. Treated as constant if float. If None, treated as zero.

mxstep : int, optional

The maximum number of steps allowed for each integration point. See scipy.integrate.odeint for more information.

rtol : float, 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.

Previous topic

darkhistory.history.tla.compton_cooling_rate

Next topic

darkhistory.low_energy

This Page