Open mbcxqcw2 opened 2 years ago
Hi Charlie,
I have investigated this, and I think I know what is happening.
With the Batten2021 method, the highest available redshift is about z\~3. This means redshifts beyond that aren't available for redshift calculations. The average DM up to redshift z\~3 is about 3000 pc cm^-3.
However, you have used DM bins up to 5000 (which in reality would average near redshift z\~5). But since it can't go beyond redshift 3, it can only return a value z<3, but with DMs of 5000. These would be sightlines with a high number of halos.
For example, In the plot I have attached below, you can see the full redshift PDF for a DM=5000 pc cm^-3 FRB. You can see it goes well off the right-hand side of the plot. So the median gets all messed up at high DM values.
Basically, this all means that you are getting a weird line because you are asking it to predict redshifts for DMs well outside the redshift rage the model was made to estimate. I would personally recommend keeping the maximum bin value to less than 2500 pc cm-3.
Let me know if that answers your problem.
Cheers, Adam
import fruitbat
from matplotlib import pyplot as plt
frb = fruitbat.Frb(5000)
frb.plot_redshift_pdf()
plt.show()
Hello Adam,
Apologies for the delayed reply -- I only just saw it!
So if I understand correctly, when you chose a too-large maximum DM, the method will be forced to pile the remaining DM into the high end of the redshift range available (which is z=3), thus skewing the statistics?
Thanks very much!
Charlie
Hello Adam,
Thanks for making your code available online for us. I'm hoping to compare some work to previous literature, including your mean DM - z relationship in Figure 2 (right) of Batten et al. 2021. Adapting the examples you provide in the documentation, I've tried to plot the actual EAGLE curve via the code below, and have included the resulting plot in an attachment.
As can be seen, this doesn't look quite the same as in the paper, as it blows up approaching redshift 3. I was wondering whether you had any advice on what was going on here?
Many thanks, Charlie
import fruitbat
from matplotlib import pyplot as plt
fb_dm_vals = np.linspace(.01,5000,20)
fb_batten_z_vals = [fruitbat.Frb(i).calc_redshift(method="Batten2021", cosmology="Planck18") for i in fb_dm_vals]
plt.ylabel('DM')
plt.xlabel('z')
plt.plot(fb_batten_z_vals,fb_dm_vals)
plt.show()