Точность преобразования красного смещения расстояния AstroPy - PullRequest
0 голосов
/ 01 марта 2019

Насколько точным является преобразование красного смещения функции AstroPy.coordinates.Distance?

Похоже, что это полезно только для тысячных цифр (гораздо менее точных, чем вопросы точности чисел с плавающей запятой):

from astropy import units as u
from astropy.coordinates import SkyCoord, Distance
from astropy.cosmology import Planck15

z1 = 0.05598
z2 = 0.31427

dist1 = Distance(unit=u.pc, z = z1, cosmology = Planck15)
dist2 = Distance(unit=u.pc, z = z2, cosmology = Planck15)

dist1.z    #prints 0.05718
dist2.z    #prints 0.31916

Я использую это для вычисления трехмерных расстояний между внегалактическими источниками, и эти расхождения имеют порядок Mpc, который очень велик для того, что я изучаю.Это неизбежное ограничение AstroPy?

1 Ответ

0 голосов
/ 04 августа 2019

Это работает в астропии 3.2.1 для python 3.7.

from astropy import units as u
from astropy.coordinates import SkyCoord, Distance
from astropy.cosmology import Planck15

z1 = 0.05598
z2 = 0.31427

dist1 = Distance(unit=u.pc, z = z1, cosmology = Planck15)
dist2 = Distance(unit=u.pc, z = z2, cosmology = Planck15)

dist1.z
Out[9]: 0.055979999974738834

dist2.z
Out[10]: 0.31427000077974493

Похоже, что вычисление имеет точность до 7 значащих цифр.

z3 = 1.31427987654321

dist3 = Distance(unit=u.pc, z = z3, cosmology = Planck15)

dist3.z
Out[23]: 1.3142798808605372

z4 = 900.31427987654321

dist4 = Distance(unit=u.pc, z = z4, cosmology = Planck15)

dist4.z
Out[29]: 900.3142861453044

Где-то близко к z= 1000 это вернет ошибку, говорящую о том, что значение максимально, так как в этот момент вы приближаетесь к территории CMB.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...