继续阅读
旋转黑洞与玻色云 · 阅读路径
云的复频率是一个连分数的零点,这个连分数由三项递推关系构成。用这种办法找到的零点,要过三关才可信:把连分数加深,它不动;它是基态,不是泛音;它能复现已发表的表格。我们的程序三关都过了,与Dolan 2007年给出的最大增长率相差不到0.3%,Lab里的增长曲线就由它算出。
本章接着守恒能流、物理单位与第一次增长估算往下讲,需要复数、微分方程的级数解和一点Python。
被困住的云要同时满足两个边界条件。在视界处它只能往里掉,这和散射波一样。在远处它必须衰减,不能向外辐射,即 ,其中
两个条件只有在某些特殊的复数 上才能同时成立。实部是云的振荡频率,虚部 是增长率,云增长时为正。
Dolan把解写成两端行为都已正确的因子乘一个幂级数:
其中 ,。级数变量在视界处为0,在无穷远处趋于1。Dolan,《克尔时空中有质量克莱因—戈尔登场的不稳定性》第III节式(33)—(34)
把级数代入径向方程,得到三项递推:
、、 都是 的二次式,系数取决于 、、、 和角向本征值 。级数在 处收敛,只对递推的最小解成立,而最小解存在的条件恰好是
Dolan,第III节式(35)—(36)与式(47)—(48) 这就是Leaver方法,最早用来算黑洞的振铃。
写程序时有两个细节。第一, 要用复数的扁球参数 来算,而不是 ;我们的程序在勒让德基底上取 矩阵求本征值。第二,连分数从有限深度 往回算到 , 是个数值参数,必须检验。
def continued_fraction(omega, a, mu, l=1, m=1, depth=4000):
c0, c1, c2, c3, c4 = _recurrence_coefficients(omega, a, mu, l, m)
n = np.arange(depth + 1, dtype=float)
alpha = n * n + (c0 + 1) * n + c0
beta = -2 * n * n + (c1 + 2) * n + c3
gamma = n * n + (c2 - 3) * n + c4
tail = 0j
for k in range(depth, 0, -1):
tail = alpha[k - 1] * gamma[k] / (beta[k] - tail)
return (beta[0] - tail) / beta[0]完整文件见kerr_bound_states.py。
Dolan在复平面上求连分数绝对值的最小值。我们改用复数割线迭代,从上一章的类氢频率出发。Brito、Cardoso、Pani,《超辐射》第5.6.2节式(5.27)相邻能级相隔约 ,所以每一步都限制在这个间距的5%以内。不加限制,一大步就可能跳到别的能级上。
例题1。 、 时,类氢初值是 。迭代收敛到 。实部几乎不动,虚部减了一半。
时深度取3000,更小时取6000。检验办法是把深度乘以四再解一次,看结果变多少。
| 自转 | 耦合 | 相对变化 |
|---|---|---|
小耦合收敛最慢。云的峰值在 附近, 时是 ,级数变量要非常接近1才能把解描述完整,各项也衰减得慢。 的误差远小于Lab显示的精度,但它是最坏情形,引用时应该报这个数。
Dolan对六个自转值列出了增长最快的 云所在的耦合和它的增长率。我们用黄金分割搜索,在自己的程序上找每个最大值。
| 自转 | 发表的 | 发表的 | 复算的 | 复算的 | 相差 |
|---|---|---|---|---|---|
每一处差别都小于表中三位有效数字的舍入。这只复现了一张表,不是整篇论文。脚本是compare_hydrogenic_growth.py,保存的输出是hydrogenic-comparison-outputs.json。
割线迭代会收敛到离初值最近的零点,而耦合较大时,基态和第一泛音挨得很近。按类氢图像,两者实部分别是 和 , 时只差约1.5%。
例题2。 、 时,从类氢初值出发会收敛到 ,那是径向有一个节点的泛音。改从 的解出发,才得到基态:,,云被吸收。程序里有一道检查,实部偏离类氢值超过8%就判为丢失模式,但它拦不住这种情况,因为两个能级靠得比8%近得多。
我们的网格靠延拓避开这个陷阱。从 起,每个新耦合都从同一自转下前两个解的直线外推出发,求解器就能跟着同一个能级走。每个存下的值还要核对超辐射条件: 当且仅当 。这项检查能发现错误的根或算错的角向本征值,却分不清能级,因为泛音也满足同样的条件。让网格留在基态上的,是延拓和曲线的光滑。
Lab不在浏览器里解连分数,而是读一张离线算好的网格,由build_growth_reference_grid.py生成:
格点之间,Lab把增长率写成 ,对光滑的 关于 插值。这样增长率的零点正好落在超辐射门槛上。在七个落在格线之间的点上,包括上面的泛音例子,插值结果与直接求解相差不到0.83%。
散射波也可以拿公开的表这样核对。方法指南就做这件事:复算一份公开的超辐射放大表。
比较自转0.99和0.5时实线与虚线两条增长曲线,记下它们在哪里相符。 打开黑洞超辐射Lab
旋转黑洞与玻色云 · 阅读路径