---
title: "先抽到哪些质量，再问星团有多亮"
description: "从质量直方图推到IMF归一化、反函数抽样与原生节点权重，分清分量、系统和一次有限群体。"
canonical_url: "https://sandboxphysics.com/zh/stories/cluster-populations/draw-masses-before-counting-stars/"
language: "zh-CN"
page_type: "story"
alternate_languages:
  en: "https://sandboxphysics.com/stories/cluster-populations/draw-masses-before-counting-stars/"
last_modified: "2026-11-03"
---

[星团颜色与恒星群体](https://sandboxphysics.com/zh/stories/cluster-populations/)

AC32 · L1

# 先抽到哪些质量，再问星团有多亮

Sandbox Physics · 2026-11-03

星团的光由具体成员贡献。先说明每个质量区间会抽到多少分量，再把这些分量配对，才能解释为什么少数亮星会改变整群星的样子。

## 开始前需要什么

读过上一篇即可。会用幂、对数和面积；本章会把积分解释成许多小质量区间的总和，并推导实际用到的式子。

## 一格有多少星，先看格子多宽

先画一张出生质量直方图。横轴是质量，纵轴数每格有多少个分量。一格从一倍太阳质量延伸到两倍，另一格从两倍延伸到四倍；后者宽一倍。即使两格星数一样，也不能说它们的单位质量数目一样。

把出生质量写成太阳质量的倍数$m=M_{\rm birth}/M_\odot$，用$\xi(m)\,dm$表示一个很窄区间内的期望分量数。这就是出生质量函数，也常简称IMF。它说的是许多可能群体的数目规律；一次抽出的1024个分量不会恰好等于每格期望。

$$
\Pr(a<m<b)={\int_a^b\xi(m)\,dm\over\int_{m_{\min}}^{m_{\max}}\xi(m)\,dm}
$$

积分把窄格子的面积加起来。分子数目标区间，分母数整个支持区间；比例才是一个分量落进其中的概率。

如果横轴改成对数质量，同样宽的一格就对应不同的实际质量宽度。因此要先问论文画的是每单位质量的数目，还是每单位对数质量的数目。两个图的斜率不一样，未必是两套恒星物理。

对应阅读：Kroupa (2001), On the variation of the initial mass function

## 一条有限的分段幂律

本地多年龄模型采用一个明确截断的教学质量族：0.1至8倍太阳质量，在0.5处换斜率。这个选择让低质量成员和少量较重成员同时出现。它不是从M67数据恢复出的IMF，也不把0.1以下或8以上的星当作不存在。

$$
\xi(m)\propto\begin{cases}m^{-1.3},&0.1\le m<0.5,\\0.5^{\alpha-1.3}m^{-\alpha},&0.5\le m\le8.\end{cases}
$$

第二段前面的系数让两段在0.5处接上。归一化还要除以整个有限区间的积分。较大的高质量斜率会降低重分量的相对数目。

![自算三种高质量斜率的有限分段分量质量概率密度](https://sandboxphysics.com/_astro/imf.PlbKdwoU.svg)

自有解析教学分布，支持0.1至8倍太阳质量，按质量比的单位宽度归一。公开固定年龄模型另以更窄原生区间为条件，抽取离散节点。

对一般斜率$a$，质量从$l$到$h$的面积可以直接积分。指数恰好为一时，通常的分母会变成零，实际极限却很平稳：面积变成对数。

$$
I_a(l,h)=\begin{cases}\dfrac{h^{1-a}-l^{1-a}}{1-a},&a\ne1,\\[4pt]\ln(h/l),&a=1.\end{cases}
$$

这里的自然对数来自对质量倒数的积分。程序在指数接近一时用稳定的对数形式，避免把两个几乎相等的数相减。

举个独立小例子：只看0.5至2倍太阳质量，斜率取2.3。1至2这一半区间的概率约0.288826。抽1024个分量，期望约296个落在这里；独立抽样时，标准差约14.5个。看到282个或307个，并不意味着抽样器违背了同一条IMF。这个例子用于算概率，质量支持与公开默认不同。

对应阅读：Kroupa (2001), On the variation of the initial mass function

## 从一枚均匀随机数得到一个质量

想象一条从零到一的纸带。把低质量段占的总概率涂在左边，高质量段涂在右边；一枚均匀随机数先决定落在哪段。进入某段后，再把这一段的累计面积倒过来，找到质量。这样就不用“随便挑个质量再反复拒绝”。

$$
m(u)=\begin{cases}\left[l^{1-a}+u\left(h^{1-a}-l^{1-a}\right)\right]^{1/(1-a)},&a\ne1,\\l(h/l)^u,&a=1.\end{cases}
$$

这是单段幂律的反累计分布。令从下界到目标质量的积分占整段面积的比例等于均匀数，再解出质量。分段族还需先按各段总面积选择分段，并把均匀数重映射到该段。

有限样本应保留种子和真正抽出的质量列表。种子帮助重放，不会把一次样本变成总体平均。检验抽样时也要分开两件事：确定性的累计分布计算是否正确，以及一次随机样本离它有多远。后者可以偶然越过事先规定的统计界。教程会保留一个这样的失败样本。

对应阅读：Kroupa (2001), On the variation of the initial mass function

## 只有98个原生节点时怎样抽

公开默认的许可模型只提供一段固定年龄的98个节点。最初我们试过抽连续质量，再对光度作分段线性插值。把隔行节点留出后，最大星等差约0.003018，超过预先写下的0.002探索门。这项失败没有变成“已通过”；公开默认也不继续使用那条连续光度分支。

现在让相邻节点的质量中点成为单元边界，最外边界就是原表支持端点。第$i$个节点的权重，等于它那一格里的IMF面积占全部面积的比例。抽中一格就使用该格原生节点的质量和各波段光，完全不需要猜一个中间质量的光度。

$$
w_i={\int_{b_{i-1}}^{b_i}\xi(m)\,dm\over\int_{m_{\min}}^{m_{\max}}\xi(m)\,dm},\qquad\sum_iw_i=1
$$

边界由相邻质量的算术中点定义，不是按节点序号平均分格。每项权重为正，单元正好覆盖实际支持区间。

这是一个质量离散化的条件群体。它保留每个质量单元的数目概率，却不保证离散节点的平均质量恰好等于连续IMF的平均质量。保存记录中的出生总质量必须由实际抽出的节点相加，不能拿连续期望偷换。节点间隔不均匀，给每行相同概率更会引入没有物理根据的数目偏置。

对应阅读：Reyes et al. (2024), a precise M67 isochrone; native ISOA data

## 先抽分量，再给它们找同伴

如果先抽一颗主星，再随手给它加一颗伴星，新增分量就会改变原先说好的分量质量分布。这里先抽完1024个分量，再随机打乱身份，把其中一部分两两配对。每个身份只用一次，未配对的仍是单星系统。

$$
N_{\rm pair}=\left\lfloor {f_bN_c\over1+f_b}\right\rfloor,\qquad N_{\rm sys}=N_c-N_{\rm pair}
$$

给定分量数与目标双星系统比例，解出双星数，再向下取整。双星系统比例的分母是系统数，不是分量数。

目标比例0.35、分量数1024时，实际配出265对，剩下759个系统，双星系统比例约0.349144。舍入差留在读数里。所有分量的质量相加与所有系统出生质量相加应相等；这项质量守恒约束针对同一批已抽出的分量；改变质量分布斜率后，抽出的总质量可以改变。

我们采用随机配对，不声称复现真实双星质量比规律。下一章不再抽新星，而是接过这一份身份和质量列表，把每个系统真正贡献的光算出来。

对应阅读：Kroupa (2001), On the variation of the initial mass function

## 练习与解释性答案

1. 单段数目密度与质量的倒数成正比，支持区间为1至4。累计概率一半处的质量是多少？

   展开解释

   是2，而不是区间的算术中点2.5。指数为一时，累计概率是质量比的自然对数；一半对应从1乘到4的几何中点。

2. 若$dN/dm\propto m^{-\alpha}$，改画每单位自然对数质量的数目，斜率怎样变？

   展开解释

   由$dm=m\,d\ln m$，得到$dN/d\ln m=m\,dN/dm\propto m^{1-\alpha}$。每个对数格在较大质量处更宽，多出来的质量因子来自换横轴，不是多生成了恒星。例如1至2与2至4在对数轴上一样宽，后者的实际质量宽度却多一倍。

3. 1024个分量、双星系统目标比例0.35时，应配多少对？把比例直接乘1024为什么不对？

   展开解释

   解系统数关系后，向下取整为265对；系统数759，实际比例约0.349144。直接乘分量数把分母换成了分量，没计入每配一对就少一个系统。

## 动手检验预测

### [核对每个分量只出现一次](https://sandboxphysics.com/zh/labs/star-cluster/?analysis=populations)

1. 导出默认群体，检查componentMasses与各系统componentIds。把身份合在一起，应恰好得到1024个不同身份。
2. 把系统initialSystemMass相加，再同全部分量质量总和比较。

### [固定节点，也能改变质量数目](https://sandboxphysics.com/zh/labs/star-cluster/?analysis=populations)

1. 只拖质量斜率，观察亮成员数和颜色图。公开默认仍使用同一98个质量节点。
2. 再只拖双星比例：分量质量列表应保持，系统数与叠光改变。

[上一篇：同一天出生，为什么颜色不排成一条线](https://sandboxphysics.com/zh/stories/cluster-populations/same-birthday-different-stars/) [下一篇：两颗星怎样变成一个点](https://sandboxphysics.com/zh/stories/cluster-populations/two-stars-one-point/)

## 来源与计算范围

1. [Reyes et al. (2024), a precise M67 isochrone; native ISOA data](https://zenodo.org/records/12616441)

   原ISOA文件只有3.95 Gyr一个年龄。公开CC BY 4.0片段选取中心氢质量分数大于0.001的98个单调节点；原生绝对星等使用Gaia DR2，不能混作EDR3。

2. [Kroupa (2001), On the variation of the initial mass function](https://arxiv.org/abs/astro-ph/0009005v1)

   重点读分量质量分布与未分辨系统的区别。本地模型的0.1至8倍太阳质量区间是教学截断，不是对M67拟合出的IMF。
