[AstroPy] Redshift vs. Luminosity Distance
Nicholas Ross
npross at roe.ac.uk
Mon Jul 22 20:11:57 EDT 2019
Apologies for additional email, but
DLs_for_axis = np.array([0.01, 500., 1000., 2000., 3000., 5000., 6000.]) * u.Mpc
redshift_ticks = [z_at_value(cosmo.luminosity_distance, DLs) for DLs in DLs_for_axis]
seems to solve this one.
Thanks,
Nic
> On Jul 22, 2019, at 4:54 PM, Nicholas Ross <npross at roe.ac.uk> wrote:
>
> Hi,
>
> Been struggling with this one::
>
> import astropy.units as u
> from astropy.cosmology import FlatLambdaCDM
> from astropy.cosmology import z_at_value
>
> cosmo = FlatLambdaCDM(H0=67.7, Om0=0.307)
> luminosity_distances = np.array([0.0, 500., 1000., 2000., 3000., 5000., 6000.]) * u.Mpc
> z_at_value(cosmo.luminosity_distance, luminosity_distances)
>
> ---------------------------------------------------------------------------
> ValueError Traceback (most recent call last)
> <ipython-input-5-0294161797b4> in <module>()
> 5 cosmo = FlatLambdaCDM(H0=67.7, Om0=0.307) #Banados thesis
> 6 luminosity_distances = np.array([0.0, 500., 1000., 2000., 3000., 5000., 6000.]) * u.Mpc
> ----> 7 z_at_value(cosmo.luminosity_distance, luminosity_distances)
> ~/anaconda3/lib/python3.6/site-packages/astropy/cosmology/funcs.py in z_at_value(func, fval, zmin, zmax, ztol, maxfun)
> 116 fval_zmin = func(zmin)
> 117 fval_zmax = func(zmax)
> --> 118 if np.sign(fval - fval_zmin) != np.sign(fval_zmax - fval):
> 119 warnings.warn("""\
> 120 fval is not bracketed by func(zmin) and func(zmax). This means either…
>
>
> Is this because astropy.cosmology returns the luminosity distance — which is monotonic with
> redshift in a flat/open cosmology, as
> dL = dA*(1+z)^2
> where dA is the non-monotonic angular diameter distance??
>
> Thanks,
> Nic
>
>
More information about the AstroPy
mailing list