Численное моделирование модели темной массы BeeTheory

Полный, воспроизводимый отчет о численном интегрировании, разложении барионных скоростей, минимизации χ² и вариантах реализации, лежащих в основе моделирования темной массы в BeeTheory.

Эта техническая страница объясняет, как воспроизвести численное моделирование скрытой массы Млечного Пути в BeeTheory. Здесь описаны данные наблюдений, барионная модель, уравнение плотности на основе волн, численное интегрирование, метод подгонки, тесты на сходимость и справочный код.

Цель проста: начните с видимого диска Млечного Пути, примените модель волновой плотности BeeTheory, вычислите эффективную скрытую массу и сравните полученную кривую круговой скорости с наблюдениями эпохи Gaia.

Содержание

  • Обзор моделирования
  • Данные наблюдений
  • Модель барионных скоростей
  • Уравнение темной плотности BeeTheory
  • Схема численного интегрирования
  • Минимизация χ² и подбор параметров
  • Сходимость и бюджет ошибок
  • Полный код ссылки
  • Как воспроизвести моделирование

0. Что мы вычисляем и почему

Кривая вращения Млечного Пути — это круговая скорость Vc(R) звезд в зависимости от их расстояния R от Галактического центра. Сегодня она измеряется гораздо точнее, чем общее распределение массы, которое мы можем непосредственно наблюдать.

Дефицит между наблюдаемой скоростью и тем, что предсказывает видимая барионная материя, — это проблема скрытой массы. Стандартные модели предполагают наличие невидимого гало частиц, обычно холодной темной материи. BeeTheory предлагает другую интерпретацию: каждый элемент видимой массы излучает волновое поле, которое экспоненциально затухает в трех измерениях, и накопленное поле ведет себя как скрытая масса.

Симуляция делает три вещи:

  1. Вычислите Vcbar(R) из видимого диска и выпуклости, используя аналитическую формулу диска Фримена.
  2. Численно проинтегрируйте плотность BeeTheory ρdark(r; ℓ, λ) на каждом радиусе, а затем преобразуйте ее в VcDM(R).
  3. Минимизирует χ²(ℓ, λ) по отношению к кривой вращения Млечного Пути эпохи Гайи, чтобы найти репрезентативные параметры для наилучшей подгонки.

Моделирование разработано таким образом, чтобы его можно было воспроизвести. Она может выполняться на JavaScript или Python без специализированной библиотеки по астрофизике.

Условные обозначения, используемые во всем тексте

  • R — цилиндрический галактоцентрический радиус в плоскости диска, в кпк.
  • r — сферический галактоцентрический радиус.
  • z — это высота над диском.
  • — длина когерентности BeeTheory, в кпк.
  • λ — безразмерная связь между волной и массой.
  • G используется в единицах кпк км² с-² M⊙-¹.
\(G=4.302\times10^{-3}\,\mathrm{kpc\,km^2\,s^{-2}\,M_\odot^{-1}}\)

Обзор трубопровода

  1. Данные эпохи Gaia: постройте набор данных (Ri,Vi, σi).
  2. Барионная модель: вычислите Vbar(R) по диску и выпуклости.
  3. Плотность BeeTheory: вычислите ρdark(r; ℓ, λ), используя квадратуру.
  4. Замкнутая масса: интегрируйте эффективную плотность темноты в Mdark(<R).
  5. Полная скорость: вычислите Vtot(R) из барионов плюс эффективная темная масса.
  6. Минимизация χ²: поиск в пространстве параметров наилучших ℓ и λ.
\(V_{\mathrm{tot}}(R)=\sqrt{V_{\mathrm{bar}}^2(R)+V_{\mathrm{DM}}^2(R)}\)

1. Данные наблюдений — Gaia 2024

Набор данных основан на кривой вращения Млечного Пути времен Гайи. В нем используются радиусы R, круговые скорости Vc и неопределенности σ. В первоначальной технической версии использовалось 16 точек данных, охватывающих R = 4-27,3 кпк.

Важными фактами наблюдения являются:

  • Vc(R⊙ = 8 кпк) ≈ 230 км/с, точка привязки вблизи орбиты Солнца.
  • Vc приблизительно плоский в диапазоне от 5 до 20 кпк.
  • Vc уменьшается во внешнем измеряемом диске, достигая около 173 ± 17 км/с вблизи 27,3 кпк в данных, полученных по ссылке.

Для этого необходимо эффективное распределение скрытой массы, которое сильно возрастает на промежуточных радиусах, а затем ослабевает на больших радиусах.

\(R_i=\{4,5,6,7,8,9,10,11,12,14,16,18,20,22,24,27.3\}\,\mathrm{kpc}\) \(V_i=\{220,228,232,231,230,229,228,227,226,224,222,219,215,208,200,173\}\,\mathrm{km/s}\)

Мы исключили самую внутреннюю часть Галактики, потому что там преобладает центральный бар и некруговые движения. Упрощенная осесимметричная модель не является надежной внутри этой области.

2. Модель барионных скоростей — диск и выпуклость

Круговая скорость видимой материи — это квадратичная сумма вкладов диска и выпуклости:

\(V_{\mathrm{bar}}^2(R)=V_{\mathrm{disk}}^2(R)+V_{\mathrm{bulge}}^2(R)\)

2.1 Экспоненциальный диск — формула Фримена

Тонкий звездный диск имеет экспоненциальную поверхностную плотность:

\(\Sigma(R)=\Sigma_0e^{-R/R_d}\)

с репрезентативными параметрами:

\(\Sigma_0=800\,M_\odot\,\mathrm{pc}^{-2}\) \(R_d=2.6\,\mathrm{kpc}\)

Круговая скорость бесконечно тонкого экспоненциального диска общей массой Md равна:

\(V_{\mathrm{disk}}^2(R)=\frac{2GM_d}{R_d}y^2\left[I_0(y)K_0(y)-I_1(y)K_1(y)\right],\qquad y=\frac{R}{2R_d}\)

ЗдесьIn иKn — модифицированные функции Бесселя первого и второго рода. Они вычисляются численно с помощью стандартных полиномиальных и асимптотических приближений.

2.2 Аппроксимация выпуклости

Выпуклость моделируется как компактный сферический вклад массы:

\(V_{\mathrm{bulge}}^2(R)=\frac{GM_{\mathrm{bulge}}}{R}\)

Более полная модель использовала бы профиль де Вокулера или бароподобный профиль, но за пределами нескольких внутренних килопарсеков этого приближения достаточно для моделирования первого порядка.

ПараметрСимволЗначениеЗначение
Гравитационная постояннаяG4.302 × 10-³кпк км² с-² M⊙-¹
Радиус шкалы дискаRd2,6 кпкРепрезентативная шкала тонких дисков
Масса дискаMd3.5 × 10¹⁰ M⊙Приблизительная масса звездного диска
Выпуклая массаMb1.2 × 10¹⁰ M⊙Приблизительная масса выпуклости

Барионные параметры остаются фиксированными, поскольку они независимо ограничены звездным населением и фотометрией. Подгонка их одновременно к ℓ и λ привела бы к сильным вырождениям.

3. Уравнение темной плотности BeeTheory

3.1 Физический постулат

Каждый видимый элемент массы dV в положении r′ в галактическом диске генерирует поле гравитационных волн, которое создает эффективную плотность массы в точке поля r:

\(d\rho_{\mathrm{dark}}(\mathbf{r})=\frac{\lambda}{\ell}\rho_{\mathrm{vis}}(\mathbf{r}’)\exp\left(-\frac{|\mathbf{r}-\mathbf{r}’|}{\ell}\right)dV\)

Полная плотность темноты в любой точке (R,z) — это суперпозиция по всем элементам диска. Поскольку источник представляет собой диск, член объемной плотности становится членом поверхностной плотности:

\(\rho_{\mathrm{vis}}dV\rightarrow \Sigma(R’)R’\,dR’\,d\phi\)

Полный двойной интеграл:

\(\rho_{\mathrm{dark}}(R,z)=\frac{\lambda}{\ell}\int_0^\infty\int_0^{2\pi}\Sigma(R’)\exp\left(-\frac{\sqrt{R^2+R’^2-2RR’\cos\phi+z^2}}{\ell}\right)R’\,d\phi\,dR’\)

3.2 Ядро монополя и азимутальное интегрирование

Внутренний интеграл по φ в общем случае не имеет элементарной замкнутой формы. В режиме, когда точка поля находится достаточно далеко от кольца источника, среднее азимутальное значение может быть аппроксимировано разложением по монополю.

\(K(r,R’)=\int_0^{2\pi}e^{-D(r,R’,\phi)/\ell}\,d\phi\approx\frac{2\pi\ell}{r}\sinh\left(\frac{r}{\ell}\right)e^{-(r+R’)/\ell}\)

Это приближение надежно за пределами внутреннего диска, поэтому упрощенная подгонка исключает центральную Галактику.

После подстановки K плотность темноты сводится к одномерному интегралу по R′:

\(\rho_{\mathrm{dark}}(r;\ell,\lambda)=\frac{\lambda\Sigma_0}{\ell}\int_0^\infty R’e^{-R’/R_d}\frac{2\pi\ell}{r}\sinh\left(\frac{r}{\ell}\right)e^{-(r+R’)/\ell}dR’\)

3.3 Аналитическая проверка асимптотического предела

Для Rd ≪ r ≪ ℓ выражение упрощается. Диск намного меньше радиуса, а длина когерентности все еще намного больше радиуса.

\(\rho_{\mathrm{dark}}(r)\xrightarrow{R_d\ll r\ll\ell}\frac{2\pi\lambda\Sigma_0R_d^2}{r^2}\)

Потому что:

\(\int_0^\infty R’e^{-R’/R_d}dR’=R_d^2\) \(\sinh\left(\frac{r}{\ell}\right)\approx\frac{r}{\ell}\) \(e^{-r/\ell}\approx1\)

Эта асимптотическая плотность ведет себя как ρ ∝ r-², что дает M( \(\rho(r)\propto r^{-2}\Longrightarrow M(<r)\propto r\Longrightarrow V_c=\sqrt{\frac{GM(<r)}{r}}\approx\mathrm{constant}\)

Подставив репрезентативные значения, Вы получите локальную плотность, близкую к наблюдаемому значению Млечного Пути:

\(\rho_{\mathrm{dark}}(8\,\mathrm{kpc})\approx\frac{2\pi(0.082)(800\,M_\odot\,\mathrm{pc}^{-2})(2.6\,\mathrm{kpc})^2}{(8\,\mathrm{kpc})^2}\approx0.38\,\mathrm{GeV/cm^3}\)

4. Схема численного интегрирования

4.1 Шаг 1 — ρdark(r) с помощью квадратуры средней точки

Интеграл от источника к кольцу по R′ усекается при R′max = 30 кпк, за пределами которого экспоненциальная поверхностная плотность диска пренебрежимо мала.

Интеграция использует правило средней точки с N исходными узлами:

\(\rho_{\mathrm{dark}}(r;\ell,\lambda)\approx\frac{\lambda}{\ell}\sum_{i=0}^{N-1}\Sigma_0e^{-R’_i/R_d}K(r,R’_i)\Delta R’,\qquad R’_i=\left(i+\frac{1}{2}\right)\frac{30}{N}\)

где:

\(K(r,R’_i)=\frac{2\pi\ell}{r}\sinh\left(\frac{r}{\ell}\right)e^{-(r+R’_i)/\ell}\)

4.2 Шаг 2 — Закрытая темная масса

После вычисления ρdark(r) замкнутая темная масса внутри радиуса R получается с помощью интеграла по сферической оболочке:

\(M_{\mathrm{dark}}(<R)=\int_0^R4\pi r^2\rho_{\mathrm{dark}}(r)\,dr\)

Численно:

\(M_{\mathrm{dark}}(<R)\approx\sum_{j=0}^{N_r-1}4\pi r_j^2\rho_{\mathrm{dark}}(r_j)\Delta r\)

4.3 Шаг 3 — Круговая скорость темной материи

\(V_{\mathrm{DM}}(R)=\sqrt{\frac{GM_{\mathrm{dark}}(<R)}{R}}\)

Тогда полная круговая скорость равна:

\(V_{\mathrm{total}}(R)=\sqrt{V_{\mathrm{bar}}^2(R)+V_{\mathrm{DM}}^2(R)}\)

4.4 Преобразование единиц измерения

Интеграл плотности дает плотность в солнечных массах на кубический килопарсек. Чтобы сравнить с канонической плотностью местной темной материи в ГэВ/см³, используйте:

\(1\,\frac{M_\odot}{\mathrm{kpc}^3}=\frac{1.989\times10^{30}\,\mathrm{kg}\times5.61\times10^{26}\,\mathrm{GeV/kg}}{(3.086\times10^{21}\,\mathrm{cm})^3}\) \(1\,M_\odot\,\mathrm{kpc}^{-3}\approx3.778\times10^{-2}\,\mathrm{GeV\,cm^{-3}}\)

5. χ² Минимизация и подгонка параметров

5.1 Целевая функция

Подгонка минимизирует уменьшенный хи-квадрат:

\(\chi_\nu^2(\ell,\lambda)=\frac{1}{N-p}\sum_{i=1}^{N}\left(\frac{V_c^{\mathrm{model}}(R_i;\ell,\lambda)-V_{c,i}}{\sigma_i}\right)^2\)

с N = 16 точками данных и p = 2 свободными параметрами, ℓ и λ. Это дает 14 степеней свободы.

5.2 Двухпроходной поиск по сетке

Вместо градиентного спуска используется сеточный поиск, поскольку ландшафт имеет длинную, изогнутую долину вырождения между λ и ℓ.

  • Проход 1: грубая сетка на ℓ и λ.
  • Проход 2: локальное уточнение вокруг грубого минимума.

Репрезентативная область наилучшего соответствия — это:

\(\ell\approx130\,\mathrm{kpc},\qquad \lambda\approx0.082,\qquad \chi^2/\mathrm{dof}\approx1.4\)

5.3 Долина вырождения

Ландшафт χ² не является симметричной чашей. Он образует вытянутую долину, потому что ведущая нормализация плотности сильно зависит от силы связи и лишь слабо — от длины когерентности в режиме плоского вращения.

Внешний спад кривой вращения нарушает это вырождение, поскольку меньшие значения ℓ раньше подавляют эффективную плотность.

Данные за пределами 30 кпк, включая шаровые скопления, звездные потоки, звезды гало и галактики-спутники, необходимы для более точного определения ℓ.

6. Сходимость и бюджет ошибок

Моделирование проверяет, насколько чувствителен результат к количеству квадратурных узлов, используемых в интеграле источника и радиальном интеграле массы.

N исходных узловρ(8 кпк)Относительное изменениеχ²/дофВремя выполнения
1010.833.2%1.52Быстрый
2010.981.8%1.45Быстрый
4011.080.9%1.41Выбор производства
8011.130.4%1.40Медленнее
20011.150.2%1.39Валидация

N = 40 дает субпроцентную точность плотности и почти сходящиеся значения χ². Численная ошибка меньше, чем погрешности наблюдений и моделирования.

Основные источники ошибок

Источник ошибокЭффектСмягчение последствий
Монопольное приближениеВлияет на внутренние радиусыИспользуйте точное угловое ядро
Отсутствующий толстый дискСдвиги λДобавьте компонент толстого диска
Отсутствующий газовый дискИзменяет внешний профильДобавьте газовые диски HI и H₂
Систематика GaiaВлияет на внешнюю кривую скоростиИспользуйте полную ковариационную матрицу
Аппроксимация сферической симметрииВлияет на сглаживание ореолаИспользуйте полное 3D ядро

Доминирующая неопределенность — это не численное интегрирование. Это физическое моделирование: барионное разложение, аппроксимация ядра, данные о внешнем гало и точная связь между волновым уравнением Би-Теории и экспоненциальным ядром.

7. Полный код ссылки

Следующая эталонная реализация JavaScript воспроизводит основную логику моделирования. Она предназначена для технической проверки и должна быть помещена в соответствующее окружение скриптов, а не непосредственно в стандартный блок контента WordPress, если только не разрешены пользовательские скрипты.

// Физические константы
const G = 4.302e-3; // кпк км² с-² M☉-¹
const Sig0 = 800.0; // M☉ pc-²
const Rd = 2.6; // кпк
const Mdisk = 3.5e10; // M☉
const Mbulge = 1.2e10; // M☉
const CONV_RHO = (1.989e30 * 5.61e26) / (3.086e21)**3;

// Данные о вращении в эпоху Гайи
const OBS_R = [4,5,6,7,8,9,10,11,12,14,16,18,20,22,24,27.3];
const OBS_V = [220,228,232,231,230,229,228,227,226,224,222,219,215,208,200,173];
const OBS_ERR = [10,8,7,7,6,6,6,7,7,8,9,10,11,13,17];

// Заполнитель барионной скорости
function vBaryonic(R) {
  // В полной реализации здесь используется формула диска Фримена
  // с модифицированными функциями Бесселя I0, I1, K0, K1.
  const vb2 = G * Mbulge / Math.max(R, 0.2);
  return Math.sqrt(Math.max(0, vb2));
}

// Плотность темноты BeeTheory
function rhoDark(r, ell, lam) {
  const N = 40;
  const dRp = 30.0 / N;
  let sum = 0;

  for (let i = 0; i < N; i++) {
    const Rp = (i + 0.5) * dRp;
    const Sig = Sig0 * Math.exp(-Rp / Rd);
    const K = (2 * Math.PI * ell / r)
      * Math.sinh(Math.min(r / ell, 30))
      * Math.exp(-Math.min((r + Rp) / ell, 30));

    sum += Sig * Rp * K * dRp;
  }

  return (lam / ell) * sum;
}

// Замкнутая темная масса
function enclosedDarkMass(R, ell, lam) {
  const Nr = 30;
  const dr = R / Nr;
  пусть M = 0;

  for (let j = 0; j < Nr; j++) {
    const rj = (j + 0.5) * dr;
    M += 4 * Math.PI * rj * rj * rhoDark(rj, ell, lam) * dr;
  }

  return M;
}

// Темновая и полная скорость
function vDM(R, ell, lam) {
  return Math.sqrt(Math.max(0, G * enclosedDarkMass(R, ell, lam) / R));
}

function vTotal(R, ell, lam) {
  const vb = vBaryonic(R);
  const vd = vDM(R, ell, lam);
  return Math.sqrt(vb * vb + vd * vd);
}

// Хи-квадрат
function chiSquared(ell, lam) {
  пусть s = 0;

  for (let i = 0; i < OBS_R.length; i++) {
    const dv = (vTotal(OBS_R[i], ell, lam) - OBS_V[i]) / OBS_ERR[i];
    s += dv * dv;
  }

  return s / (OBS_R.length - 2);
}

Полная версия должна включать точную реализацию модифицированных функций Бесселя I0, I1, K0 и K1 для скорости диска Фримена.

8. Как воспроизвести эту симуляцию

8.1 В браузере

  1. Откройте любой современный браузер.
  2. Откройте консоль разработчика.
  3. Вставьте полную реализацию JavaScript.
  4. Запустите функцию подгонки или оцените χ² вручную для выбранных ℓ и λ.

8.2 В Python

Этот же алгоритм напрямую переводится на Python и NumPy. В Python используйте scipy.special.iv и scipy.special.kv для функций Бесселя, которые являются более точными, чем полиномиальные аппроксимации, выполненные вручную.

import numpy as np
from scipy.special import iv, kv
from scipy.optimize import minimize

G = 4.302e-3
Sig0 = 800.0
Rd = 2.6
Mdisk = 3.5e10
Mbulge = 1.2e10

OBS_R = np.array([4,5,6,7,8,9,10,11,12,14,16,18,20,22,24,27.3])
OBS_V = np.array([220,228,232,231,230,229,228,227,226,224,222,219,215,208,200,173])
OBS_ERR = np.array([10,8,7,7,6,6,6,6,7,7,8,9,10,11,13,17])

# Реализуйте v_baryonic, rho_dark, enclosed_dark и chi2
# используя те же формулы, что описаны выше.

Оптимизатор Нелдера-Мида должен сходиться к той же физической области, что и поиск по сетке JavaScript, с ℓ около 130 кпк и λ около 0,08 в упрощенной модели.

8.3 Расширения для соответствия качеству публикации

  1. Замените ядро монополя точным угловым ядром или ядром функции Бесселя.
  2. Добавьте толстый дисковый компонент.
  3. Добавьте диски с атомарными и молекулярными газами.
  4. Более точно отразите галактическую полосу и выпуклость.
  5. Используйте байесовский MCMC для составления карты апостериорного распределения ℓ и λ.
  6. Включите данные о шаровых скоплениях, галактиках-спутниках и звездных потоках до 200 кпк.

Строгая подгонка должна определить, могут ли одни и те же параметры описывать не только кривую вращения диска, но и форму гало, локальную плотность, профиль внешней массы и скрытую массу в масштабах кластера.

Ссылки

  • Абрамовиц, М., Стегун, И.А. - Справочник по математическим функциям, Dover, 1972.
  • Бови, Дж., Рикс, Х.-В. - Прямое динамическое измерение профиля поверхностной плотности диска Млечного Пути, ApJ 779, 115, 2013.
  • Фримен, К. К. - О дисках спиральных и S0 галактик, ApJ 160, 811, 1970.
  • Макмиллан, П. Дж. - Распределение массы и гравитационный потенциал Млечного Пути, MNRAS 465, 76, 2017.
  • Ou, X., Eilers, A.-C., Necib, L., Frebel, A. - Профиль темной материи Млечного Пути, полученный из его кривой круговых скоростей, MNRAS 528, 693, 2024.
  • Пато, М., Иокко, Ф., Бертоне, Г. - Динамические ограничения на распределение темной материи в Млечном Пути, JCAP 12, 001, 2015.
  • Портайл, М. и др. - Динамическое моделирование галактической выпуклости и бара, MNRAS 465, 1621, 2017.

Окончательное заявление о воспроизводимости

Это моделирование не является окончательным доказательством BeeTheory. Это воспроизводимая численная схема.

Его цель - показать, что волновая эффективная плотность, создаваемая видимым диском Млечного Пути, может быть напрямую сопоставлена с наблюдениями кривых вращения, используя только два основных параметра: длину когерентности и коэффициент связи.

Следующий научный шаг - заменить приближения точными ядрами, расширить барионную модель, распространить неопределенности и проверить ту же самую схему на независимых галактиках и скоплениях галактик.