zeus21.inputs ============= .. py:module:: zeus21.inputs .. autoapi-nested-parse:: Takes inputs and stores them in useful classes. 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) Classes ------- .. autoapisummary:: zeus21.inputs.User_Parameters zeus21.inputs.Cosmo_Parameters zeus21.inputs.Astro_Parameters zeus21.inputs.LF_Parameters Functions --------- .. autoapisummary:: zeus21.inputs.validate_fields Module Contents --------------- .. py:class:: User_Parameters User parameters for Zeus21. Calling the class without specifying any parameter will set them to their default values, but they can also be directly set when creating the class: >>> zeus21.User_Parameters(precisionboost=0.5) Parameters can also be changed afterwards: >>> UserParams = zeus21.User_Parameters() >>> UserParams.precisionboost = 0.5 :param precisionboost: Make integrals take more points for boost in precision. Default is 1.0. :type precisionboost: float :param dlogzint_target: Target number of redshift bins for the redsfhit arrays in log space. Default is 0.02. :param FLAG_FORCE_LINEAR_CF: False to do standard calculation, True to force linearization of correlation function. Default is False. :type FLAG_FORCE_LINEAR_CF: bool :param MIN_R_NONLINEAR: Minimum radius R/cMpc in which we start doing the nonlinear calculation. Default is 2.0. Below ~1 it will blow up because sigma > 1 eventually, and our exp(delta) approximation breaks. Check if you play with it and if you change Window(). :type MIN_R_NONLINEAR: float :param MAX_R_NONLINEAR: Maximum radius R/cMpc in which we start doing the nonlinear calculation (above this it is very linear). Default is 100.0. :type MAX_R_NONLINEAR: float :param FLAG_DO_DENS_NL: Whether to do the nonlinear (ie lognormal) calculation for the density field itself and its cross correlations. Default is False. Small (<3%) correction in dd, but non trivial (~10%) in d-xa and d-Tx :type FLAG_DO_DENS_NL: bool :param FLAG_WF_ITERATIVE: Whether to iteratively do the WF correction as in Hirata2006. Default is True. :type FLAG_WF_ITERATIVE: bool :param zmin: Minimum redshift to which we compute the T21 signals. Default is 5.0. :type zmin: float :param DO_ONLY_GLOBAL: Whether zeus21 only runs the global T21 signal (and not fluctuations). Default is False. :type DO_ONLY_GLOBAL: bool :param USE_BARYON_FLAG: Whether zeus21 computes 21-cm power spectra with (1+delta_b) prefactor instead of (1+delta) This means LSS terms use P_baryon(k) and P_baryon_x_cdm(k). Default is True. :type USE_BARYON_FLAG: bool .. attribute:: C2_RENORMALIZATION_FLAG Whether to renormalize the C2 oefficients (appendix in 2302.08506). Default is True. :type: bool .. py:attribute:: precisionboost :type: float :value: 1.0 .. py:attribute:: dlogzint_target :type: float :value: 0.02 .. py:attribute:: FLAG_FORCE_LINEAR_CF :type: bool :value: False .. py:attribute:: MIN_R_NONLINEAR :type: float :value: 2.0 .. py:attribute:: MAX_R_NONLINEAR :type: float :value: 100.0 .. py:attribute:: FLAG_DO_DENS_NL :type: bool :value: False .. py:attribute:: FLAG_WF_ITERATIVE :type: bool :value: True .. py:attribute:: zmin :type: float :value: 5.0 .. py:attribute:: DO_ONLY_GLOBAL :type: bool :value: False .. py:attribute:: USE_BARYON_FLAG :type: bool :value: True .. py:attribute:: C2_RENORMALIZATION_FLAG :type: int .. py:class:: Cosmo_Parameters Cosmological parameters for zeus21. This class also runs and saves an instance of CLASS. :param UserParams: zeus21 class for the user parameters. Default is the default instance of the User_Parameters class. :type UserParams: User_Parameters :param omegab: Baryon density * h^2. Default is 0.0223828. :type omegab: float :param omegac: CDM density * h^2. Default is 0.1201075. :type omegac: float :param h_fid: Hubble constant / 100. Default is 0.67810. :type h_fid: float :param As: Amplitude of initial fluctuations. Default is 2.100549e-09. :type As: float :param ns: Spectral index. Default is 0.9660499. :type ns: float :param tau_fid: Optical depth to reionization. Default is 0.05430842. :type tau_fid: float :param kmax_CLASS: Maximum wavenumber to be passed to CLASS. Default is 500.0. :type kmax_CLASS: float :param zmax_CLASS: Maximum redshift to be passed to CLASS. Default is 50.0. :type zmax_CLASS: float :param zmin_CLASS: Minimum redshift to be passed to CLASS. Default is 5.0. :type zmin_CLASS: float :param Rs_min: Minimum radius to be passed to CLASS. Default is 0.05. Set to 0.929 when Flag_emulate_21cmfast is True. :type Rs_min: float :param Rs_max: Maximum radius to be passed to CLASS. Default is 2000.0. Set to 500 when Flag_emulate_21cmfast is True. :type Rs_max: float :param Flag_emulate_21cmfast: Whether zeus21 emulates 21cmFAST cosmology (used in HMF, LyA, and X-ray opacity calculations). Default is False. When False, sets the Star Formation Rate model to GALLUMI-like, and when True to 21cmfast-like (ignores Mc and beta and has a t* later in SFR()). :type Flag_emulate_21cmfast: bool :param USE_RELATIVE_VELOCITIES: Whether to use v_cb. Default is False. :type USE_RELATIVE_VELOCITIES: bool :param HMF_CHOICE: Which HMF to use. Default is "ST". "ST" for the classic Sheth-Tormen (f(nu)), "Yung" for the Tinker08 (f(sigma)) calibrated to Yung+23. :type HMF_CHOICE: str :param _Mhmin: Minimum halo mass in Msun to compute the HMF. Default is 1e5. :type _Mhmin: float :param _Mhmax: Maximum halo mass in Msun to compute the HMF. Default is 1e14. :type _Mhmax: float .. attribute:: ClassCosmo CLASS instance to compute cosmology. It is set with the 6 LCDM parameters set in Cosmo_Parameters. :type: Class .. attribute:: omegam Matter density * h^2. Default is 0.1424903. :type: float .. attribute:: OmegaM Matter density. Default is 0.3098830430481206. :type: float .. attribute:: rhocrit Critical density. Default is 127339073085.43648. :type: float .. attribute:: OmegaR Radiation density. Default is 9.096145657179167e-05. :type: float .. attribute:: OmegaL Dark energy density. Default is 0.6900259954953076. :type: float .. attribute:: OmegaB Baryon density. Default is 0.048677349798108865. :type: float .. attribute:: rho_M0 Actual matter density. Default is 39460219466.64208. :type: float .. attribute:: z_rec Recombination reshift. Default is 1088.7722850526861. :type: float .. attribute:: sigma_vcb Square root of the variance of the relative velocity field. Default is 1. :type: float .. attribute:: vcb_avg Average of the relative velocity field. Default is 0.0. :type: float .. attribute:: Y_He Helium mass fraction. Default is 0.24527956117097657. :type: float .. attribute:: x_He Helium-to-hydrogen number density ratio. Default is 0.08124848240215174. .. attribute:: f_H Hydrogen number density ratio relative to baryons. Default is 0.924856789420276. :type: float .. attribute:: f_He Helium number density ratio relative to baryons. Default is 0.07514321057972385. :type: float .. attribute:: mu_baryon Mean baryonic weight. Default is 1.149786421719843. :type: float .. attribute:: mu_baryon_Msun Mean baryonic weight relative to the solar mass. Default is 1.0305080308672013e-57. :type: float .. attribute:: constRM Radius-to-mass conversions for HMF. Used for CLASS input so assumes tophat. Default is 165290580780.5916. :type: float .. attribute:: zfofRint Interpolation for the redshift as a function of the comoving distance. :type: interp1d .. attribute:: chiofzint Interpolation for the comoving distance as a function of the redshift. :type: interp1d .. attribute:: Tadiabaticint Interpolation for the adiabatic temperature as a function of redshift. .. attribute:: xetanhint Interpolation for the electron fraction as a function of redshift. :type: interp1d .. attribute:: growthint Interpolation for the growth faction as a function of redshift. :type: interp1d .. attribute:: NRs Number of radii. Default is 45. :type: np.ndarray .. attribute:: indexminNL Index of the minimum radius R/cMpc in which we start doing the nonlinear calculation. :type: np.ndarray .. attribute:: indexmaxNL Index of the maximum radius R/cMpc in which we start doing the nonlinear calculation. :type: np.ndarray .. attribute:: a_ST Rescaling of the HMF barrier. Default is 0.707. Set to 0.73 when Flag_emulate_21cmfast is True. :type: float .. attribute:: p_ST Correction factor for the abundance of small mass objects. Default is 0.3. Set to 0.175 when Flag_emulate_21cmfast is True. :type: float .. attribute:: Amp_ST Normalization factor for the halo mass function. Default is 0.3222. Set to 0.353 when Flag_emulate_21cmfast is True. :type: float .. attribute:: delta_crit_ST Barrier for halo to collapse in Sheth-Tormen formalism. Default is 1.686. Set to 1.68 when Flag_emulate_21cmfast is True. :type: float .. attribute:: a_corr_EPS Correction to the EPS relation between nu and nu' when doing extended PS. Follows hi-z simulation results from Schneider+21. Default is 0.707. Set to 1.0 when Flag_emulate_21cmfast is True. :type: float .. py:attribute:: UserParams :type: dataclasses.InitVar[User_Parameters] .. py:attribute:: omegab :type: float :value: 0.0223828 .. py:attribute:: omegac :type: float :value: 0.1201075 .. py:attribute:: h_fid :type: float :value: 0.6781 .. py:attribute:: As :type: float :value: 2.100549e-09 .. py:attribute:: ns :type: float :value: 0.9660499 .. py:attribute:: tau_fid :type: float :value: 0.05430842 .. py:attribute:: kmax_CLASS :type: float :value: 500.0 .. py:attribute:: zmax_CLASS :type: float :value: 50.0 .. py:attribute:: zmin_CLASS :type: float :value: 5.0 .. py:attribute:: Rs_min :type: float :value: 0.5 .. py:attribute:: Rs_max :type: float :value: 2000.0 .. py:attribute:: Flag_emulate_21cmfast :type: bool :value: False .. py:attribute:: USE_RELATIVE_VELOCITIES :type: bool :value: False .. py:attribute:: HMF_CHOICE :type: str :value: 'ST' .. py:attribute:: ClassCosmo :type: classy.Class .. py:attribute:: omegam :type: float .. py:attribute:: OmegaM :type: float .. py:attribute:: rhocrit :type: float .. py:attribute:: OmegaR :type: float .. py:attribute:: OmegaL :type: float .. py:attribute:: OmegaB :type: float .. py:attribute:: rho_M0 :type: float .. py:attribute:: z_rec :type: float .. py:attribute:: sigma_vcb :type: float .. py:attribute:: vcb_avg :type: float .. py:attribute:: Y_He :type: float .. py:attribute:: x_He :type: float .. py:attribute:: f_H :type: float .. py:attribute:: f_He :type: float .. py:attribute:: mu_baryon :type: float .. py:attribute:: mu_baryon_Msun :type: float .. py:attribute:: constRM :type: float .. py:attribute:: zfofRint :type: scipy.interpolate.interp1d .. py:attribute:: chiofzint :type: scipy.interpolate.interp1d .. py:attribute:: Tadiabaticint :type: scipy.interpolate.interp1d .. py:attribute:: xetanhint :type: scipy.interpolate.interp1d .. py:attribute:: growthint :type: scipy.interpolate.interp1d .. py:attribute:: NRs :type: numpy.ndarray .. py:attribute:: indexminNL :type: numpy.ndarray .. py:attribute:: indexmaxNL :type: numpy.ndarray .. py:attribute:: a_ST :type: float .. py:attribute:: p_ST :type: float .. py:attribute:: Amp_ST :type: float .. py:attribute:: delta_crit_ST :type: float .. py:attribute:: a_corr_EPS :type: float .. py:attribute:: tageofzMyr :type: scipy.interpolate.interp1d .. py:attribute:: zfoftageMyr :type: scipy.interpolate.interp1d .. py:method:: runclass() Set up CLASS cosmology. Takes CosmologyIn class input and returns CLASS Cosmology object .. py:method:: run_correlations() .. py:method:: get_xi_R1R2(field=None) Get correlation function of density, linearly extrapolated to z=0, smoothed over two different radii with Window(k,R) .. py:class:: Astro_Parameters Astrophysical parameters for zeus21. :param CosmoParams: zeus21 class for the cosmological parameters. Needs to be inputed. :type CosmoParams: Cosmo_Parameters :param accretion_model: Accretion model. "exp" for exponential, "EPS" for EPS. "RP16" for the dynamically averaged fitting function in Rodríguez-Puebla+16. Default is "exp". :type accretion_model: str :param USE_POPIII: Whether to use Pop III. Default is False. :type USE_POPIII: bool :param USE_LW_FEEDBACK: Whether to use the Lyman-Werner feedback. Default is True. :type USE_LW_FEEDBACK: bool :param quadratic_SFRD_lognormal: Whether to use the second order correction to the SFRD approximation. Default is True. :type quadratic_SFRD_lognormal: bool :param epsstar: Amplitude of the star formation efficiency (at M_pivot). Default is 0.1. :type epsstar: float :param dlog10epsstardz: Derivative of epsstar with respect to z. Default is 0.0. :type dlog10epsstardz: float :param alphastar: Power law index of the star formation efficiency at low masses. Default 0.5. :type alphastar: float :param betastar: Power law index of the star formation efficiency at high masses. Not used if Flag_emulate_21cmfast = True. Default -0.5. :type betastar: float :param Mc: Mass at which the star formation efficiency cuts. Not used if Flag_emulate_21cmfast=True. Default 3e11. :type Mc: float :param epsstar_III: Amplitude of the star formation efficiency (at M_pivot) for Pop III. Default is 10**(-2.5). :type epsstar_III: float :param dlog10epsstardz_III: Derivative of epsstar with respect to z for Pop III. Default is 0.0. :type dlog10epsstardz_III: float :param alphastar_III: Power law index of the Pop III star formation efficiency at low masses. Default 0.0. :type alphastar_III: float :param betastar_III: Power law index of the Pop III star formation efficiency at high masses. Default 0.0. :type betastar_III: float :param Mc_III: Mass at which the Pop III star formation efficiency cuts. Default 1e7. :type Mc_III: float :param Mup_III: High-mass cutoff for Pop III star formation efficiency. Default "Matom" for Pop III star formation confined to molecular-cooling minihalos; also accepts custom cutoff value or None for no cutoff :type Mup_III: str, float, None :param DETACH_III_ACH: Whether to have a separate set of parameters for star formation efficiency for the (ACH) component for Pop III. Default is False. :type DETACH_III_ACH: bool :param epsstar_III_ACH: Amplitude of the star formation efficiency (at M_pivot) for the (ACH) component for Pop III. Default is 0.0. :type epsstar_III_ACH: float :param dlog10epsstardz_III_ACH: Derivative of epsstar with respect to z for the (ACH) component for Pop III. Default is 0.0. :type dlog10epsstardz_III_ACH: float :param alphastar_III_ACH: Power law index of the (ACH) component of Pop III star formation efficiency at low masses. Default 0.0. :type alphastar_III_ACH: float :param betastar_III_ACH: Power law index of the (ACH) component of Pop III star formation efficiency at high masses. Default 0.0. :type betastar_III_ACH: float :param Mc_III_ACH: Mass at which the (ACH) component of Pop III star formation efficiency cuts. Default 1e7. :type Mc_III_ACH: float :param N_alpha_perbaryon_II: Number of photons between LyA and Ly Continuum per baryon (from LB05). Default is 9690. :type N_alpha_perbaryon_II: float :param N_alpha_perbaryon_III: Number of photons between LyA and Ly Continuum per baryon (from LB05) for Pop III. Default is 17900. :type N_alpha_perbaryon_III: float :param L40_xray: Soft-band (E<2 keV) lum/SFR in Xrays in units of 10^40 erg/s/(Msun/yr). Default is 3.0. :type L40_xray: float :param E0_xray: Minimum energy in eV. Default is 500. :type E0_xray: float :param alpha_xray: Xray SED power-law index. Default is -1.0. :type alpha_xray: float :param L40_xray_III: Soft-band (E<2 keV) lum/SFR in Xrays in units of 10^40 erg/s/(Msun/yr) for Pop III. Default is 3.0. :type L40_xray_III: float :param alpha_xray_III: Xray SED power-law index. Default is -1.0. :type alpha_xray_III: float :param Emax_xray_norm: Max energy in eV to normalize SED. Default at 2000.0 eV. :type Emax_xray_norm: float :param fesc10: Amplitude of the escape fraction. Default is 0.1. Escape fraction assumed to be a power law normalized (fesc10) at M=1e10 Msun with index alphaesc. :type fesc10: float :param alphaesc: Index for the escape fraction. Default is 0.0. Escape fraction assumed to be a power law normalized (fesc10) at M=1e10 Msun with index alphaesc. :type alphaesc: float :param fesc7_III: Amplitude of the Pop III escape fraction. Default is 10**(-1.35). Escape fraction assumed to be a power law normalized (fesc10) at M=1e10 Msun with index alphaesc. :type fesc7_III: float :param alphaesc_III: Index for the Pop III escape fraction. Default is -0.3. Escape fraction assumed to be a power law normalized (fesc10) at M=1e10 Msun with index alphaesc. :type alphaesc_III: float :param clumping: Clumping factor, which is z-independent and fixed for now. Default is 3.0, changed to 2.0 when Flag_emulate_21cmfast=True. :type clumping: float :param R_linear_sigma_fit_input: Initial guess radius at which the linear fit of the barrier is computed. Default is 10.0. :type R_linear_sigma_fit_input: float :param FLAG_BMF_converge: Whether zeus21 allow the BMF to try and make the average ionized fraction converge. Default is True. :type FLAG_BMF_converge: bool :param max_iter: Maximum iteration allowed for the convergence of the BMF. Default is 10. :type max_iter: int :param ZMAX_REION: Maximum redshift to which the reionization quantities are computed. Default is 30.0. :type ZMAX_REION: float :param Rbub_min: Minimum bubble radius. Default is 0.05. :type Rbub_min: float :param A_LW: Parameters controlling the LW feedback factor (see Munoz+22, eq 13). Default is 2.0. :type A_LW: float :param beta_LW: Parameters controlling the LW feedback factor (see Munoz+22, eq 13). Default is 0.6. :type beta_LW: float :param A_vcb: Normalization for the relative velocity feedback parameter. Default is 1.0. :type A_vcb: float :param beta_vcb: Spectral index for the relative velocity feedback parameter. Default 1.8. :type beta_vcb: float :param Mturn_fixed: Turn-over halo mass at which the star formation rate cuts. Default is None. :type Mturn_fixed: float | None :param FLAG_MTURN_SHARP: Whether to do sharp cut at Mturn_fixed or regular exponential cutoff. Only active if FLAG_MTURN_FIXED and turned on by hand. Default is False. :type FLAG_MTURN_SHARP: bool :param FLAG_USE_PSD: Whether to derive MUV and sigmaUV from integrating SFH. Default is False. :type FLAG_USE_PSD: bool :param FLAG_COMPARE_BAGPIPES: Whethher to compare with bagpipes. Default is False. :type FLAG_COMPARE_BAGPIPES: bool :param SEDMODEL: Which SED model to use for the Greens functions. Default is "BPASS". Can be set to "bagpipes", "BPASS_binaries", and "BPASS". :type SEDMODEL: str = "BPASS" :param normLHa_ZIMF: Floating normalization of the LHa luminosity compared to the baseline SEDMODEL to account for HMF or metallicity changes. Default is 1.0 :type normLHa_ZIMF: float :param alphanormLHa_ZIMF: Power-law index of normLHa_ZIMF against halo mass. Default is 0.0 :param sigmaPSD: Amplitude of fluctuations in SFR arising from the power spectral density (PSD) model of SFR variability. Default is 0.5. This is the baseline scatter in ln(SFR) at a reference halo mass of 10^10 Msun. :type sigmaPSD: float :param dsigmaPSDdlog10Mh: Slope of the scatter with respect to halo mass. Default is 0.0. :type dsigmaPSDdlog10Mh: float :param tauPSD: Characteristic timescale (in Myr) that enters the power spectral density (PSD) of ln(SFR). Default is 10.0. :type tauPSD: float :param dlog10tauPSDdlog10Mh: Slope of the timescale with respect to halo mass. Default is 0.0. :type dlog10tauPSDdlog10Mh: float :param _tcut_LUV_short: Sets where the LUV short and long are separated in Myr. Default is 30.0. :type _tcut_LUV_short: float :param FLAG_RENORMALIZE_AVG_SFH: Whether to normalize the SFR in Msun/yr at each Mh. Default is True. :type FLAG_RENORMALIZE_AVG_SFH: bool .. attribute:: fstarmax Peak amplitude for the star formation efficiency. Set by zeus21 to 1. :type: float .. attribute:: Emax_xray_integral Max energy in eV that zeus21 integrate up to. Higher than Emax_xray_norm since photons can redshift from higher z. Set by zeus21 to 10000. :type: float .. attribute:: Nen_xray Number of energies to do the xray integrals. Set by zeus21 to 30. :type: int .. attribute:: Energylist Energies, in eV. :type: np.ndarray .. attribute:: dlogEnergy Used to get dlog instead of dlog10. :type: float .. attribute:: N_ion_perbaryon_II Number of ionizing photons per baryon. Fixed for PopII-type (Salpeter) by zeus21 to 5000. :type: int .. attribute:: N_ion_perbaryon_III Number of ionizing photons per baryon for Pop III. Fixed for PopIII-type to 44000 (or 52480 when Flag_emulate_21cmfast=True), from Klessen & Glover 2023 Table A2 (2303.12500). :type: int .. attribute:: N_LW_II Number of LW photons per baryon. Assuming BL05 stellar spectrum, equal to N_alpha_perbaryon_II * fraction of photons that fall in the LW band. :type: float .. attribute:: N_LW_III Number of LW photons per baryon. Assuming Intermediate IMF from 2202.02099, equal to 4.86e-22 / (11.9 * u.eV).to(u.erg).value * 5.8e14. :type: float .. attribute:: FLAG_MTURN_FIXED Whether to fix Mturn or use Matom(z) at each z. Set by zeus21 depending on Mturn_fixed. :type: bool .. py:attribute:: CosmoParams :type: dataclasses.InitVar[Cosmo_Parameters] .. py:attribute:: accretion_model :type: str :value: 'exp' .. py:attribute:: USE_POPIII :type: bool :value: False .. py:attribute:: USE_LW_FEEDBACK :type: bool :value: True .. py:attribute:: quadratic_SFRD_lognormal :type: bool :value: True .. py:attribute:: epsstar :type: float :value: 0.1 .. py:attribute:: dlog10epsstardz :type: float :value: 0.0 .. py:attribute:: alphastar :type: float :value: 0.5 .. py:attribute:: betastar :type: float :value: -0.5 .. py:attribute:: Mc :type: float :value: 300000000000.0 .. py:attribute:: fstarmax :type: float .. py:attribute:: epsstar_III :type: float :value: 0.0031622776601683794 .. py:attribute:: dlog10epsstardz_III :type: float :value: 0.0 .. py:attribute:: alphastar_III :type: float :value: 0.0 .. py:attribute:: betastar_III :type: float :value: 0.0 .. py:attribute:: Mc_III :type: float :value: 10000000.0 .. py:attribute:: Mup_III :type: str | float | None :value: 'Matom' .. py:attribute:: Mup3TEMP :type: float :value: 243785288.14448217 .. py:attribute:: DETACH_III_ACH :type: bool :value: False .. py:attribute:: epsstar_III_ACH :type: float :value: 0.0 .. py:attribute:: dlog10epsstardz_III_ACH :type: float :value: 0.0 .. py:attribute:: alphastar_III_ACH :type: float :value: 0.0 .. py:attribute:: betastar_III_ACH :type: float :value: 0.0 .. py:attribute:: Mc_III_ACH :type: float :value: 10000000.0 .. py:attribute:: N_alpha_perbaryon_II :type: float :value: 9690 .. py:attribute:: N_alpha_perbaryon_III :type: float :value: 17900 .. py:attribute:: L40_xray :type: float :value: 3.0 .. py:attribute:: E0_xray :type: float :value: 500.0 .. py:attribute:: alpha_xray :type: float :value: -1.0 .. py:attribute:: L40_xray_III :type: float :value: 3.0 .. py:attribute:: alpha_xray_III :type: float :value: -1.0 .. py:attribute:: Emax_xray_norm :type: float :value: 2000 .. py:attribute:: Emax_xray_integral :type: float .. py:attribute:: Nen_xray :type: int .. py:attribute:: Energylist :type: numpy.ndarray .. py:attribute:: dlogEnergy :type: float .. py:attribute:: fesc10 :type: float :value: 0.1 .. py:attribute:: alphaesc :type: float :value: 0.0 .. py:attribute:: fesc7_III :type: float :value: 0.0446683592150963 .. py:attribute:: alphaesc_III :type: float :value: -0.3 .. py:attribute:: clumping :type: float :value: 3.0 .. py:attribute:: N_ion_perbaryon_II :type: int .. py:attribute:: N_ion_perbaryon_III :type: int .. py:attribute:: R_linear_sigma_fit_input :type: float :value: 10.0 .. py:attribute:: FLAG_BMF_converge :type: bool :value: True .. py:attribute:: max_iter :type: int :value: 10 .. py:attribute:: ZMAX_REION :type: float :value: 30 .. py:attribute:: Rbub_min :type: float :value: 0.05 .. py:attribute:: A_LW :type: float :value: 2.0 .. py:attribute:: beta_LW :type: float :value: 0.6 .. py:attribute:: N_LW_II :type: float .. py:attribute:: N_LW_III :type: float .. py:attribute:: A_vcb :type: float :value: 1.0 .. py:attribute:: beta_vcb :type: float :value: 1.8 .. py:attribute:: Mturn_fixed :type: float | None :value: None .. py:attribute:: FLAG_MTURN_SHARP :type: bool :value: False .. py:attribute:: FLAG_MTURN_FIXED :type: bool .. py:attribute:: FLAG_USE_PSD :type: bool :value: False .. py:attribute:: FLAG_COMPARE_BAGPIPES :type: bool :value: False .. py:attribute:: SEDMODEL :type: str :value: 'BPASS' .. py:attribute:: normLHa_ZIMF :type: float :value: 1.0 .. py:attribute:: alphanormLHa_ZIMF :type: float :value: 0.0 .. py:attribute:: sigmaPSD :type: float :value: (0.5,) .. py:attribute:: dsigmaPSDdlog10Mh :type: float :value: (0.0,) .. py:attribute:: tauPSD :type: float :value: (10.0,) .. py:attribute:: dlog10tauPSDdlog10Mh :type: float :value: (0.0,) .. py:attribute:: FLAG_RENORMALIZE_AVG_SFH :type: bool :value: True .. py:class:: LF_Parameters Luminosity functions parameters for zeus21. :param zcenter: Redshift bin center at which to compute the luminosity functions. Default is 6.0. :type zcenter: float :param zwidth: Redshift bin width at which to compute the luminosity functions. Default is 0.5 :type zwidth: float :param RETURNLF: Whether to compute LFs. Default is True. :type RETURNLF: bool :param RETURNBIAS: Whether to compute bias. Default is False. :type RETURNBIAS: bool :param SKIP_POPII: If True, skip the Pop II component. Default is False. :type SKIP_POPII: bool :param SKIP_POPIII: If True, skip the Pop III component. Default is True. :type SKIP_POPIII: bool :param SKIP_TOT: If True, skip the summed component. Default is False. :type SKIP_TOT: bool :param FLAG_COMPUTE_UVLF: Whether to compute the UV LF/bias. Default is True. :type FLAG_COMPUTE_UVLF: bool :param MUVcenters: M_UV bin centers at which to compute the luminosity functions. Default is np.linspace(-23,-14,100). :type MUVcenters: np.ndarray | float :param MUVwidths: M_UV bin width at which to compute the luminosity functions. Default is 0.5. :type MUVwidths: np.ndarray | float :param FLAG_RENORMALIZE_LUV: Whether to renormalize the lognormal LUV with sigmaUV to recover or otherwise . Default is False (recommended). :param _kappaUV: SFR-to-UV conversion factor in Msun/yr per erg/s/Hz. :type _kappaUV: float = 1.15e-28. :param sigmaUV: Stochasticity (gaussian rms) in the halo-galaxy connection P(MUV | Mh). Default is 0.5. :type sigmaUV: float :param UV_boost_III: Pop III main-component UV conversion factor relative to Pop II. Default is 1. :type UV_boost_III: float :param _kappaUV_III: SFR-to-UV conversion factor in Msun/yr per erg/s/Hz for Pop III main component. :type _kappaUV_III: float = kappaUV/UV_boost_III. :param sigmaUV_III: MUV scatter for the Pop III main component. Default is 0.5. :type sigmaUV_III: float :param DUST_FLAG_III: Whether to include dust attenuation to the LF calculations for Pop III main component. Default is False. :type DUST_FLAG_III: bool :param UV_boost_III_ACH: Pop III detached atomic-cooling-halo UV conversion factor relative to Pop II. Default is 1. :type UV_boost_III_ACH: float :param _kappaUV_III_ACH: SFR-to-UV conversion factor in Msun/yr per erg/s/Hz for Pop III ACH component. :type _kappaUV_III_ACH: float = kappaUV/UV_boost_III_ACH. :param sigmaUV_III_ACH: MUV scatter for the detached Pop III ACH component. Default is 0.5. :type sigmaUV_III_ACH: float :param DUST_FLAG_III_ACH: Whether to include dust attenuation to the LF calculations for Pop III ACH component. Default is False. :type DUST_FLAG_III_ACH: bool :param FLAG_COMPUTE_HaLF: Whether to compute the Ha LF/bias. Default is False. :type FLAG_COMPUTE_HaLF: bool :param log10LHacenters: Ha bin centers at which to compute the luminosity functions, given in log10. Default is np.linspace(38,45,10). :type log10LHacenters: np.ndarray | float :param log10LHawidths: Ha bin width at which to compute the luminosity functions, given in log10. Default is 0.5. :type log10LHawidths: np.ndarray | float :param DUST_FLAG: Whether to include dust attenuation to the LF calculations. Default is True. :type DUST_FLAG: bool :param DUST_model: Which dust model to use. Default is "Bouwens13". Can also be "Zhao24" (https://arxiv.org/pdf/2401.07893.pdf, table 1). :type DUST_model: str :param HIGH_Z_DUST: Whether to do dust at higher z than 0 or set to 0. Fix at beta(z=_zmaxdata) result if so. Default is True. :type HIGH_Z_DUST: bool :param _zmaxdata: Maximum calibration redshift for the dust model. Default is 8.0. :type _zmaxdata: float :param C0dust: Calibration parameter for the dust correction for UVLF. Default is 4.43 (following Meurer+99). Input 4.54 for Overzier+01. :type C0dust: float :param C1dust: Calibration parameter for the dust correction for UVLF. Default 1.99 for Meurer99. Input 2.07 for Overzier+01. :type C1dust: float :param sigma_times_AUV_dust: If not 0, normalization factor to the sigma UV of dust. Default is 0.0. :type sigma_times_AUV_dust: float .. py:attribute:: zcenter :type: float :value: 6.0 .. py:attribute:: zwidth :type: float :value: 0.5 .. py:attribute:: RETURNLF :type: bool :value: True .. py:attribute:: RETURNBIAS :type: bool :value: False .. py:attribute:: SKIP_POPII :type: bool :value: False .. py:attribute:: SKIP_POPIII :type: bool :value: True .. py:attribute:: SKIP_TOT :type: bool :value: False .. py:attribute:: FLAG_COMPUTE_UVLF :type: bool :value: True .. py:attribute:: MUVcenters :type: numpy.ndarray | float .. py:attribute:: MUVwidths :type: numpy.ndarray | float :value: 0.5 .. py:attribute:: FLAG_RENORMALIZE_LUV :type: bool :value: False .. py:attribute:: sigmaUV :type: float :value: 0.5 .. py:attribute:: UV_boost_III :type: float :value: 1.0 .. py:attribute:: sigmaUV_III :type: float :value: 0.5 .. py:attribute:: DUST_FLAG_III :type: bool :value: False .. py:attribute:: UV_boost_III_ACH :type: float :value: 1.0 .. py:attribute:: sigmaUV_III_ACH :type: float :value: 0.5 .. py:attribute:: DUST_FLAG_III_ACH :type: bool :value: False .. py:attribute:: log10LHacenters :type: numpy.ndarray | float .. py:attribute:: log10LHawidths :type: numpy.ndarray | float :value: 0.5 .. py:attribute:: FLAG_COMPUTE_HaLF :type: bool :value: False .. py:attribute:: DUST_FLAG :type: bool :value: True .. py:attribute:: DUST_model :type: str :value: 'Bouwens13' .. py:attribute:: HIGH_Z_DUST :type: bool :value: True .. py:attribute:: C0dust :type: float :value: 4.43 .. py:attribute:: C1dust :type: float :value: 1.99 .. py:attribute:: sigma_times_AUV_dust :type: float :value: 0.0 .. py:function:: validate_fields(obj, schema: dict) Helper function to check whether the input parameters are set with the proper values.