redshift_distance#

astropy.cosmology.units.redshift_distance(cosmology=None, kind='comoving', **atzkw)[源代码]#

在红移和距离之间转换数量。

应注意不要将相对论红移、引力红移等误解为宇宙学红移。

参数:
cosmology : Cosmology, str ,或 None ,可选宇宙学,python:str,或python:无,可选

宇宙学实现或内置的宇宙学名称(例如‘Planck18’)。如果没有,将使用默认的宇宙学(由控制 default_cosmology )。

kind{‘正在移动’,‘回望’,‘发光度’},可选

等效项的距离类型。注意,这不包括角直径距离,因为此距离测量不是单调的。

**atzkw

的关键字参数 z_at_value() ,用于将距离转换为红移。

返回:
Equivalency

红移与温度的等价性。

加薪:
CosmologyError

如果距离对应于大于 zmax

Exception

看见 z_at_value() 对于可能的异常,例如,如果距离映射到大于 zmax ,最大红移。

实例

>>> import astropy.units as u
>>> import astropy.cosmology.units as cu
>>> from astropy.cosmology import WMAP9
>>> z = 1100 * cu.redshift
>>> d = z.to(u.Mpc, cu.redshift_distance(WMAP9, kind="comoving"))
>>> d  
<Quantity 14004.03157418 Mpc>

反向操作也是可能的,尽管并不总是那么简单。要将非常大的距离转换为红移,可能需要指定足够大的 zmax 价值。看见 z_at_value() 了解更多细节。

>>> d.to(cu.redshift, cu.redshift_distance(WMAP9, kind="comoving", zmax=1200))  
<Quantity 1100.000 redshift>