跳到主要内容
Sandbox Physics
小星系里的暗物质

重算温暗物质截断、模糊暗物质截断和孤子核心

Sandbox Physics ·

这门课反复用到的三个拟合公式,在笔记本电脑上几秒钟就能检验。和保存下来的 CLASS 计算相比,Viel 的温暗物质拟合把半模波数估低了4%到12%。直接解增长方程得到的模糊暗物质半功率点,比 Hu 的拟合低11%到17%。和精确基态相比,Schive 的孤子拟合在三倍核心半径以内偏差不超过6%。这一章给出文件、命令、输出,以及每项检验可能怎样出错。

先读温暗物质和模糊暗物质怎样抹掉小起伏和造出暗物质核心的三种方式。你需要 Python、NumPy 和 SciPy,也要能读懂常微分方程。除非某一步另有说明,下面都是红移为零时的线性理论。下一章怎样读银河系卫星星系给温暗物质和模糊暗物质的限制会把半模质量用到一份已发表的卫星星系普查上。

材料包里有什么

所有文件都放在本站的同一个文件夹里。冻结参考网格保存了冷暗物质功率谱,以及用玻尔兹曼程序 CLASS 3.4.2 算出的温暗物质转移函数。生成网格的脚本是唯一需要 CLASS 的文件。两个基准脚本要么读这个网格,要么不需要输入:线性截断基准和孤立晕基准。它们保存的输出是 linear-output.json 和 isolated-output.json。第三个脚本 compute_teaching_values.py 重算第2到第4章例题里的每个数,写出 teaching-values.json。

宇宙学参数取普朗克2018年的 TT,TE,EE+lowE+lensing+BAO 组合,即Planck Collaboration 2020, arXiv:1807.06209v4表2最后一列:h=0.6766h=0.6766,ωb=0.02242\omega_{\mathrm b}=0.02242,ωc=0.11933\omega_{\mathrm c}=0.11933,As=2.105×10−9A_{\mathrm s}=2.105\times10^{-9},ns=0.9665n_{\mathrm s}=0.9665,τ=0.0561\tau=0.0561。中微子按无质量处理,这是明说的简化。网格有141个波数,从 0.050.05 到 300 h Mpc−1300\,h\,\mathrm{Mpc^{-1}} 按对数均匀分布。kk 的单位是 h Mpc−1h\,\mathrm{Mpc^{-1}},PP 的单位是 (h−1 Mpc)3(h^{-1}\,\mathrm{Mpc})^3。温暗物质的三次计算把全部暗物质交给质量为2、3或6.5 keV 的热遗迹粒子,再调节它的温度,让它的密度等于冷暗物质的值。

保存的输出用的是 Python 3.9.6、NumPy 2.0.2 和 SciPy 1.13.1,我们只在这组版本上运行过。先确认你手里的网格和这里的一样:它的 SHA-256 摘要以 04e1c5d5 开头,以 3bd48e 结尾。

shasum -a 256 reference-grid.json
python3 -I benchmark_linear_cutoffs.py reference-grid.json linear-output.json
python3 -I benchmark_isolated_soliton.py isolated-output.json
python3 -I compute_teaching_values.py reference-grid.json linear-output.json teaching-values.json

python3 后面那个参数让脚本在隔离模式下运行,当前文件夹里混进来的同名文件就不会顶替 NumPy 被导入。重新生成网格本身需要 CLASS 的 Python 接口 classy。

python3 -I generate_frozen_reference_grid.py reference-grid.json

检验一:温暗物质半模和 CLASS 比

Viel 的拟合给出振幅比 T(k)=[1+(αk)2ν]−5/νT(k)=[1+(\alpha k)^{2\nu}]^{-5/\nu},其中 ν=1.12\nu=1.12,α\alpha 由粒子质量决定。Viel et al. 2005, equations 6 and 7 半模有解析解 khm=(2ν/5−1)1/(2ν)/αk_{\mathrm{hm}}=(2^{\nu/5}-1)^{1/(2\nu)}/\alpha。CLASS 那边,我们取网格里存的比值 T=PWDM/PCDMT=\sqrt{P_{\mathrm{WDM}}/P_{\mathrm{CDM}}},找它第一次降到 1/21/2 以下的位置,在相邻格点之间对 log⁡k\log k 和 log⁡T\log T 做线性插值。半模质量接着由下式得到:

Mhm=4π3 Ωmρcrit(πkhm)3,M_{\mathrm{hm}}=\frac{4\pi}{3}\,\Omega_{\mathrm m}\rho_{\mathrm{crit}}\left(\frac{\pi}{k_{\mathrm{hm}}}\right)^3,

Nadler et al. 2021, equation 2 其中 Ωm=0.3096\Omega_{\mathrm m}=0.3096,ρcrit=2.775×1011 h2 M⊙ Mpc−3\rho_{\mathrm{crit}}=2.775\times10^{11}\,h^2\,\mathrm M_\odot\,\mathrm{Mpc^{-3}}。

表 5.1 同一宇宙学下,Viel 拟合和 CLASS 给出的温暗物质半模波数与半模质量。
粒子质量拟合 khmk_{\mathrm{hm}}CLASS khmk_{\mathrm{hm}}拟合与 CLASS 之比拟合 MhmM_{\mathrm{hm}}CLASS MhmM_{\mathrm{hm}}
2 keV20.6120.6121.5121.510.9580.9581.88×1091.88\times10^91.66×1091.66\times10^9
3 keV32.3332.3334.5834.580.9350.9354.88×1084.88\times10^83.99×1083.99\times10^8
6.5 keV76.2676.2686.2286.220.8840.8843.72×1073.72\times10^72.57×1072.57\times10^7

波数单位是 h Mpc−1h\,\mathrm{Mpc^{-1}},质量单位是太阳质量。质量随 khm−3k_{\mathrm{hm}}^{-3} 变化,所以在6.5 keV,波数差12%,质量就差45%。粒子越重,差距越大,而且 CLASS 的截断总比拟合落在更小的尺度上。Viel 等人选 ν=1.12\nu=1.12,是因为它对 k<5 h Mpc−1k<5\,h\,\mathrm{Mpc^{-1}} 的玻尔兹曼程序结果拟合得最好。这里的半模在20到86之间,在那个范围之外,本来就不该指望百分之一级别的吻合。

第二个比较对象是别人发表的数。Nadler 等人写的是 Mhm=5×108 M⊙ (mWDM/3 keV)−10/3M_{\mathrm{hm}}=5\times10^8\,\mathrm M_\odot\,(m_{\mathrm{WDM}}/3\,\mathrm{keV})^{-10/3}。Nadler et al. 2021, equation 5 他们的模拟用 h=0.7h=0.7、Ωm=0.286\Omega_{\mathrm m}=0.286。把这组参数和温暗物质密度 0.240.24 代进 Viel 拟合,3 keV 时得到 4.81×108 M⊙4.81\times10^8\,\mathrm M_\odot,比他们的值低4%。温暗物质密度取 0.240.24,是我们替他们的设置做的假设。

检验二:模糊暗物质截断和直接解增长方程比

Hu、Barkana 和 Gruzinov 把模糊暗物质的振幅比拟合成 T=cos⁡x3/(1+x8)T=\cos x^3/(1+x^8),其中 x=1.61 m221/18 k/kJ,eqx=1.61\,m_{22}^{1/18}\,k/k_{\mathrm{J,eq}},kJ,eq=9 m221/2 Mpc−1k_{\mathrm{J,eq}}=9\,m_{22}^{1/2}\,\mathrm{Mpc^{-1}},并说功率在 k1/2≈4.5 m224/9 Mpc−1k_{1/2}\approx4.5\,m_{22}^{4/9}\,\mathrm{Mpc^{-1}} 附近降到一半。Hu, Barkana and Gruzinov 2000, equations 8 and 9 这里 m22m_{22} 是以 10−22 eV10^{-22}\,\mathrm{eV} 为单位的粒子质量,这些波数的单位是 Mpc−1\mathrm{Mpc^{-1}},不带 hh。

独立的检验是直接积分单个波的线性增长。把波动方程写成流体形式,粒子的波长就表现为一种压强。用 δ\delta 表示密度反差,以 ln⁡a\ln a 为时间:

d2δd(ln⁡a)2+(2+dln⁡Hdln⁡a)dδdln⁡a=[32 Ωcl(a)−(ℏk22ma2H)2]δ.\frac{d^2\delta}{d(\ln a)^2}+\left(2+\frac{d\ln H}{d\ln a}\right)\frac{d\delta}{d\ln a}=\left[\frac32\,\Omega_{\mathrm{cl}}(a)-\left(\frac{\hbar k^2}{2ma^2H}\right)^2\right]\delta .

Ωcl(a)\Omega_{\mathrm{cl}}(a) 是当时参与成团的物质占临界密度的比例。脚本在复合,即 a=1/1100a=1/1100 之前只让暗物质成团,之后让全部物质成团,背景里有辐射、物质和宇宙学常数。每个波从进入视界时开始,取 δ=1\delta=1、dδ/dln⁡a=1d\delta/d\ln a=1,再把量子项去掉,把同一个波重算一遍。两次终值之比就是振幅比,脚本找出它的平方穿过 1/21/2 的位置。

表 5.2 模糊暗物质的半功率波数,单位 Mpc−1\mathrm{Mpc^{-1}}。
m22m_{22}增长方程Hu 拟合精确求解Hu 式9增长方程与拟合之比
13.803.804.584.584.54.50.8300.830
47.257.258.498.498.338.330.8540.854
2015.4815.4817.3617.3617.0417.040.8920.892

增长方程截断功率的波数比拟合小11%到17%。这个计算是简化模型:没有重子压强,没有和光子的耦合,在复合时刻是突然切换的。这张表只说明拟合和这个模型差这么多,说明不了谁更接近完整的模糊暗物质玻尔兹曼计算。下一节会看到,结果还取决于起始斜率,这也是原因之一。

检验三:把孤子当作精确基态来解

模糊暗物质晕的核心,是这种波在自身引力下能量最低的状态。在 ℏ/m=1\hbar/m=1、G=1G=1 的单位里,它满足

ψ′′+2rψ′=2uψ,u′′+2ru′=4πψ2,\psi''+\frac2r\psi'=2u\psi,\qquad u''+\frac2r u'=4\pi\psi^2,

其中 ρ=ψ2\rho=\psi^2,uu 是引力势减去能量。脚本固定 ψ(0)=1\psi(0)=1,用二分法调 u(0)u(0),直到 ψ\psi 降到零而不穿过零。方程在 r→r/λr\to r/\lambda、ρ→λ4ρ\rho\to\lambda^4\rho 下形式不变,所以对每个基态,ρ0rc4\rho_0r_{\mathrm c}^4 都是同一个数,rcr_{\mathrm c} 是密度降到一半的半径。

Schive 等人用 ρ0=1.9 (m/10−23 eV)−2(rc/kpc)−4 M⊙ pc−3\rho_0=1.9\,(m/10^{-23}\,\mathrm{eV})^{-2}(r_{\mathrm c}/\mathrm{kpc})^{-4}\,\mathrm M_\odot\,\mathrm{pc^{-3}} 和形状 [1+0.091(r/rc)2]−8[1+0.091(r/r_{\mathrm c})^2]^{-8} 去拟合他们模拟出来的核心。Schive et al. 2014, PRL, equation 3 换成这里的单位,他们的前因子是 0.22230.2223。

表 5.3 精确基态与 Schive 拟合及其旁边给出的数。
量精确基态Schive 2014
程序单位下的 ρ0rc4\rho_0r_{\mathrm c}^40.22680.22680.22230.2223
3rc3r_{\mathrm c} 以内最大形状偏差5.9%5.9\%精确到2%
3rc3r_{\mathrm c} 以内质量占总质量0.9570.957约95%
半质量半径与 rcr_{\mathrm c} 之比1.4651.465约1.45
rcr_{\mathrm c} 以内质量占总质量0.2360.236约25%

两种容差 10−710^{-7} 和 10−1010^{-10} 给出的数前六位相同。要让形状恰好在 rcr_{\mathrm c} 处减半,系数应是 21/8−1=0.09052^{1/8}-1=0.0905,0.0910.091 就是它四舍五入的结果,所以中心部分吻合得很好。偏差往外越来越大:在 rcr_{\mathrm c} 处是0.4%,在 2rc2r_{\mathrm c} 处是4.0%,最大的5.9%出现在 2.7rc2.7r_{\mathrm c}。那篇快报里说“精确到2%”的那句话,没有讲是和什么比。我们的5.9%是和精确基态比的,没有拿拟合去和他们的模拟核心比。

核心半径以内的质量乘以这个半径,也被同一个标度关系固定住。对 m=10−23 eVm=10^{-23}\,\mathrm{eV},精确基态给出 Mcrc=5.41×109 M⊙ kpcM_{\mathrm c}r_{\mathrm c}=5.41\times10^9\,\mathrm M_\odot\,\mathrm{kpc}。把 Schive 公式从 00 积到 rcr_{\mathrm c},得到 5.30×1095.30\times10^9,低2%,和前因子的差距差不多。

同一个脚本还检验自相互作用模型用到的等温球。数值解和级数 x2/6−x4/120+x6/1890x^2/6-x^4/120+x^6/1890 在 x≤0.4x\le0.4 范围内相差不超过 2.4×10−82.4\times10^{-8}。在远处,密度乘以 x2/2x^2/2 应当趋于1,在 x=200x=200、600600、20002000 处读数是 1.0161.016、1.0491.049、0.9970.997。等温球本来就是这样一边摆动一边慢慢逼近的。密度在 x=2.2746x=2.2746 处减半。

每项检验可能怎样出错

下面每种出错情形都存进了 linear-output.json,你可以确认自己能复现。

模糊暗物质拟合会变号。cos⁡x3\cos x^3 在 x=(π/2)1/3x=(\pi/2)^{1/3} 以上变负,对 m22=1m_{22}=1 就是 k=6.50 Mpc−1k=6.50\,\mathrm{Mpc^{-1}}。这个拟合只描述截断的形状,过了这一点只能用 T2T^2。在那里取 log⁡T\log T 的代码会报错停下。

定步长积分器会发散。在 k=30 Mpc−1k=30\,\mathrm{Mpc^{-1}}、m22=1m_{22}=1 时,早期的量子项非常大,方程变得刚性。自适应求解器给出振幅比 3.69×10−43.69\times10^{-4},40个固定步长的四阶龙格–库塔给出 −1.86×1026-1.86\times10^{26}。结果大成这样或者变成负数,说明步长太长,而不是物理变了。

起始条件有影响。默认起点下,m22=1m_{22}=1 的半功率点是 3.80 Mpc−13.80\,\mathrm{Mpc^{-1}}。把初始斜率设为零,得到 3.223.22。把起点的尺度因子提前十倍,得到 3.313.31。光是起点就带来15%的差别,这又是一个不该把表5.2当成精确结果的理由。

温暗物质拟合在深尾部失效。在 CLASS 第一次降到 T≈0.017T\approx0.017 的格点上,Viel 拟合已经是2 keV 的 0.00270.0027、3 keV 的 0.00190.0019、6.5 keV 的 0.00110.0011,低了6到17倍。即使在 TT 大于 0.250.25 的范围内,三种质量的拟合偏差也分别达到16%、23%和31%。尾部要紧时,直接读 CLASS 的结果。

自己动手时的检查单

  1. 开始之前先确认网格摘要。
  2. 运行三个脚本,把你的输出文件和保存的文件比较,目标是前四位有效数字一致。
  3. 一次只改一个输入。比如在生成脚本里试4 keV 的粒子,或在增长基准里试 m22=2m_{22}=2,运行之前先预测变化方向。
  4. 收紧容差再跑一次,报告哪几位数字没有动。
  5. 写下每项比较没有检验到的东西。两个计算如果有同样的简化,彼此吻合也说明不了太多。

实验任务

  1. 预测。把暗物质晕实验设成3 keV 的温暗物质,读半模质量。它是表5.1里的拟合值,还是 CLASS 值?
  2. 改一个条件。把模糊暗物质粒子质量从 m22=1m_{22}=1 调到 m22=4m_{22}=4,读孤子核心半径。晕质量不变时,它应缩小到四分之一,因为 rc∝m−1r_{\mathrm c}\propto m^{-1}。
  3. 解释。用表5.3说明,为什么实验用 Schive 公式画孤子,不会把核心的位置画得明显不对。

练习

  1. 从解析解出发,证明在宇宙学参数固定时,温暗物质半模波数按 mWDM1.11m_{\mathrm{WDM}}^{1.11} 变化,半模质量按 mWDM−3.33m_{\mathrm{WDM}}^{-3.33} 变化。
  2. 用表5.2给增长方程的半功率点拟合一个幂律。它还保持 Hu 式9的指数 4/94/9 吗?
  3. 40步的求解器在 k=30 Mpc−1k=30\,\mathrm{Mpc^{-1}} 失败。估计早期量子项相对引力项有多大,并解释为什么在 ln⁡a\ln a 上取固定步长时,步子太长了。
答案
  1. α∝m−1.11\alpha\propto m^{-1.11},而 khm∝1/αk_{\mathrm{hm}}\propto1/\alpha,所以 khm∝m1.11k_{\mathrm{hm}}\propto m^{1.11}。质量随 khm−3k_{\mathrm{hm}}^{-3} 变化,于是得到 m−3.33m^{-3.33},正是 Nadler 等人用的指数 −10/3-10/3。
  2. 从 m22=1m_{22}=1 到 2020,半功率点增大到 15.48/3.80=4.0715.48/3.80=4.07 倍。指数是 ln⁡4.07/ln⁡20≃0.47\ln4.07/\ln20\simeq0.47,接近 4/9≃0.444/9\simeq0.44。标度关系大致成立,前因子不同。
  3. 量子项按 k4/(a4H2)k^4/(a^4H^2) 变化。辐射主导时 H∝a−2H\propto a^{-2},所以 a2Ha^2H 是常数,这里约为 0.65 km s−1 Mpc−10.65\,\mathrm{km\,s^{-1}\,Mpc^{-1}},量子项也就几乎不变,而引力项很小。它的平方根 ℏk2/(2ma2H)≃13\hbar k^2/(2ma^2H)\simeq13 就是以 ln⁡a\ln a 计的振荡速率。这个波在 ln⁡a≃−16.4\ln a\simeq-16.4 附近进入视界,40个格点留下39步,每步约 0.420.42,速率乘步长约为 5.65.6。经典四阶龙格–库塔只在这个乘积小于约 2.82.8 时对振荡稳定,所以解会无限增长。

来源

  1. Planck Collaboration 2020, arXiv:1807.06209v4
  2. Viel et al. 2005, equations 6 and 7
  3. Nadler et al. 2021, equation 2
  4. Hu, Barkana and Gruzinov 2000, equations 8 and 9
  5. Schive et al. 2014, PRL, equation 3

继续阅读

这一页直接连着哪些内容

小星系里的暗物质 · 阅读路径

从中心尖峰到数卫星星系

  1. 文章不同的暗物质,能留下相似的小星系吗?
  2. 文章尖峰和核心怎样改变转动曲线
  3. 文章温暗物质和模糊暗物质怎样抹掉小起伏
  4. 文章造出暗物质核心的三种方式
  5. 当前页面重算温暗物质截断、模糊暗物质截断和孤子核心
  6. 文章怎样读银河系卫星星系给温暗物质和模糊暗物质的限制
这个页面有错误、看不明白,或者缺了什么?告诉我们
反馈类型

提交时会附带本页地址、Lab ID、网站语言和设备类型。请不要填写个人信息。反馈最多保存 12 个月。隐私政策