21cmfast / 21cmFAST

Official repository for 21cmFAST: a code for generating fast simulations of the cosmological 21cm signal
MIT License
58 stars 37 forks source link

[Question] Is there a way to specify to the run_lightcone function the redshifts values in which I want to have results? #336

Closed Andresfgomez970 closed 1 year ago

Andresfgomez970 commented 1 year ago

Describe what you would like to do

I would like to utilize the "light_cone" function in 21cmFast with a different discretization in the redshifts. This feature would greatly assist in achieving more precise comparisons with other simulations and potentially reduce any error propagation that may occur when perturbing the initial conditions for the evolution process.

What I've tried I understand that achieving this can be accomplished by passing a list of values to the "run_coeval" function. Additionally, I have examined the documentation and discovered a potential workaround using the "coeval_callback" and "coeval_callback_redshifts" functions to obtain an approximation of the desired redshift values.

I have also reviewed the "UserParams" class but did not come across any options for modifying the redshift value discretization.

Other context I am bringing up this inquiry because I believe this functionality would be highly beneficial. It is possible that this feature has already been implemented, but I have been unable to locate the relevant information in the documentation. I sincerely appreciate any assistance you can provide. Thank you in advance for your response.

qyx268 commented 1 year ago

run_lightcone currently only supports redshift discretization in log space using arguments max_redshift and redshift as well as the global parameter ZPRIME_STEP_FACTOR, which is currently set at 1.02 (i.e., (z+1) is a geometric sequence with a ratio of ZPRIME_STEP_FACTOR). Please also note that max_redshift will be replace by global parameter Z_HEAT_MAX if INHOMO_RECO or USE_TS_FLUCT is set to True.

You might alter ZPRIME_STEP_FACTOR to get different redshift lists. Being more flexible with user-defined redshift lists has been discussed in the past, but not been implemented yet.

Andresfgomez970 commented 1 year ago

Thank you so much for the quick and clear answer!!!