Если двойная звездная система имеет ненулевое наклонение, как это отразится на графике лучевой скорости?
Как я мог тогда извлечь наклон из графика?
Только по его графику RV, без какой-либо другой информации, вы не можете рассчитать наклон. Вот почему измерения скорости ПЖ обычно сообщаются как « ", потому что на самом деле вы измеряете орбитальную скорость, спроецированную вдоль луча зрения. Без другой информации вы не можете отделить орбитальную скорость от угла обзора.
Какую дополнительную информацию можно было бы иметь, которая позволила бы вам расхлебывать? Следующий список, вероятно, не является исчерпывающим.
Отличный ответ @NeutronStar хорошо резюмирует ситуацию:
Только по его графику RV (лучевой скорости), без какой-либо другой информации, вы не можете рассчитать наклон. Вот почему измерения скорости RV обычно сообщаются как «𝑣sin𝑖», потому что на самом деле вы измеряете орбитальную скорость, спроецированную вдоль луча зрения. Без другой информации вы не сможете отделить орбитальную скорость от угла обзора.
После того, как я запутался, я, наконец, убедил себя , что это так.
Из графика зависимости лучевой скорости от времени, предполагая, что период довольно короткий, мы получаем циклический график, который дает нам определенную форму и амплитуду, а также период. Период дает нам комбинацию большой полуоси, связанной с орбитой пары вокруг их центра масс, и массы системы. Из этого ответа :
У вас может быть тяжелая система или легкая система с одинаковым периодом, только орбиты разного размера. Формы двух орбит могут быть одинаковыми, а это означает, что форма профилей скоростей может быть такой же, только с разными коэффициентами масштабирования. Для скорости уравнение vis-viva говорит нам, что для меньших орбит профиль скорости будет масштабироваться как .
Как объясняет ответ @NeutronStar, наклон орбиты относительно нашего луча зрения уменьшит радиальную скорость на геометрический мультипликативный коэффициент. . Это не повлияет на форму, это строго коэффициент масштабирования.
Таким образом, невозможно определить разницу между геометрическим уменьшением кривой радиальной скорости и физическим уменьшением скорости из-за меньшей уменьшенной массы.
Говоря языком аппроксимации кривых, два параметра коррелируют на 100%, поэтому их нельзя определить независимо только по радиальной скорости.
По приглашению я включил простой скрипт Python, который создает библиотеку уникальных профилей радиальной скорости по эллиптическим орбитам с различным эксцентриситетом, наклоном и ориентацией. Он не охватывает все возможные кеплеровы орбиты, но охватывает все возможные формы.
На первом графике показана разреженная выборка, для каждой комбинации эксцентриситета и вращения нанесены наклоны 0 и 60 градусов. У них одинаковая форма, только разная амплитуда. Это показано на втором графике, который представляет собой профиль скорости 0 градусов против 60 градусов, показывающий наклон 2,0.
Последний сюжет "библиотека" форм.
При подгонке кривой с помощью поиска в библиотеке можно было бы сравнить форму профиля скорости со всеми этими и выбрать наилучшую подгонку, а затем либо выполнить интерполяцию между ближайшими соседними кривыми, либо выполнить быструю итеративную подгонку с помощью генератора орбит.
def deriv(X, t):
x, v = X.reshape(2, -1)
acc = -x * ((x**2).sum())**-1.5
return np.hstack((v, acc))
import numpy as np
import matplotlib.pyplot as plt
from scipy.integrate import odeint as ODEint
halfpi, pi, twopi = [f*np.pi for f in (0.5, 1, 2)]
degs, rads = 180/pi, pi/180
eccs = np.linspace(0, 0.7, 30)
incs = np.linspace(0, halfpi, 19) # not used
thetas = np.linspace(0, pi, 41)[:-1]
times = np.linspace(0, twopi, 257)[:-1]
A = np.array([f(thetas) for f in (np.cos, np.sin, np.ones_like)]).T[:, None, :, None]
B = np.array([f(incs) for f in (np.cos, np.ones_like, np.sin)]).T[:, None, None, :, None] # not used
# Set semimajor axis a to 1.0, period to twopi
# build small library of orbits
velocities = []
for ecc in eccs:
peri = 1. - ecc
v0 = np.sqrt(2./peri - 1.)
X0 = np.array([peri, 0, 0] + [0, v0, 0])
answer, info = ODEint(deriv, X0, times, full_output=True)
xx, vv = answer.T.reshape(2, 3, -1)
velocities.append(vv)
velocities = np.array(velocities)
big_library = B * A * velocities # not used # build larger library of rotations
med_library = A * velocities # build medium library of rotations
# library = big_library[...,0, :].reshape(-1, big_library.shape[-1]) # not used
library = med_library[...,0, :].reshape(-1, med_library.shape[-1])
noinc_library = med_library[..., 0, :].reshape(-1, med_library.shape[-1])
print library.shape
a, b = big_library[[0, 12], ::10, ::10, 0].reshape(2, 12, -1) # small sample
if True:
plt.figure()
for i, (c, d) in enumerate(zip(a, b)):
plt.subplot(4, 3, i+1)
plt.plot(c)
plt.plot(d)
#plt.plot(c/d)
plt.show()
if True:
plt.figure()
for i, (c, d) in enumerate(zip(a, b)):
plt.subplot(4, 3, i+1)
plt.plot(d, c)
plt.show()
if True:
plt.figure()
for v in noinc_library:
plt.plot(times/twopi, v)
plt.show()
ооо
Нейтронная Звезда
ооо
Мартин Кочански
Нейтронная Звезда
Нейтронная Звезда
ооо
Нейтронная Звезда
ооо
Нейтронная Звезда
ооо