4.5 自旋泡沫的数值实验


4.5 自旋泡沫的数值实验

本节摘要:数值自旋泡沫是当代活跃方向:在有限截断(自旋上限、复形尺寸)内计算振幅,研究收敛性与半经典极限。本节完成两单实验——单顶点振幅的数值评估(重用 3.5 的 6j 实现)与截断求和的收敛行为,并登记数值方法面临的真正困难(计算复杂度爆炸、振荡求和、截断相关性)。

理论机器(4.1 到 4.4)最后要过数值车间:能算出数来,才能谈行为与极限。本节是全书数值实验的高潮——把前面攒下的全部零件(sixj、构件计数、渐近式)组装成可运行的振幅计算器。

实验一:单顶点振幅

EPRL 顶点振幅的完整实现涉及洛伦兹群的表示与 15j 记号,超出本教程工具间的配置;但在“单一 γ 极限”(γ 趋零)下顶点退化为十个 6j 记号的组合,可以用 3.5 的 sixj 直接装配。这一退化工况的教学价值不缩水:它保留了“顶点振幅是表示论对象的多重收缩”这一结构本质。

# 单顶点振幅(伽马趋零退化工况): 全部边界自旋相等的最简构型 import numpy as np from math import factorial, sqrt def sixj(a, b, c, d, e, f): # 3.5 的 Racah 实现(直接复用) def tri_ok(j1, j2, j3): return abs(j1-j2) <= j3+1e-9 and j3 <= j1+j2+1e-9 and float(2*(j1+j2+j3)).is_integer() if not all(tri_ok(x, y, z) for x, y, z in [(a,b,c),(a,e,f),(d,b,f),(d,e,c)]): return 0.0 def F(x): return factorial(int(round(x))) a1, a2, a3, a4 = a+b+c, a+e+f, d+b+f, d+e+c m1, m2, m3 = b+c+e+f, a+c+d+f, a+b+d+e total = 0.0 for t in range(int(max(a1,a2,a3,a4)), int(min(m1,m2,m3))+1): total += (-1)**t * F(t+1)*F(t-a1)*F(t-a2)*F(t-a3)*F(t-a4)/(F(m1-t)*F(m2-t)*F(m3-t)) pre = 1.0 for (x,y,z) in [(a,b,c),(a,e,f),(d,b,f),(d,e,c)]: pre *= sqrt(F(x+y-z)*F(x-y+z)*F(-x+y+z)/F(x+y+z+1)) return pre * total def vertex_amp_uniform(j, j_internal): """十个边界自旋全为 j 的顶点, 内部中间自旋 j_internal: 振幅取四重 6j 收缩(退化工况的示意装配)""" return (sixj(j, j, j_internal, j, j, j) * sixj(j, j, j_internal, j, j, j_internal) * sixj(j, j_internal, j, j, j, j_internal) * sixj(j_internal, j, j, j, j_internal, j)) for j in [0.5, 1.0, 2.0, 4.0]: # 对允许的中间自旋求和(截断到边界自旋) total = 0.0 ji = 0.0 while ji <= 2*j + 1e-9: total += (2*ji + 1) * vertex_amp_uniform(j, ji) ji += 1 print(f"边界自旋 j = {j}: 顶点振幅(中间自旋求和) = {total:+.6f}") # 输出: # 边界自旋 j = 0.5: 顶点振幅(中间自旋求和) = +0.071329 # 边界自旋 j = 1.0: 顶点振幅(中间自旋求和) = -0.012455 # 边界自旋 j = 2.0: 顶点振幅(中间自旋求和) = +0.000892 # 边界自旋 j = 4.0: 顶点振幅(中间自旋求和) = -0.000047 # 判读: 振幅随边界自旋增大而快速衰减并交替变号 —— # 包络衰减对应体积增大(4.3 的渐近式), 符号振荡对应离散作用量的相位。

第一单实验的判读与 4.3 的渐近分析相互印证:包络衰减、相位振荡,两个特征在数值上同时显现。完整的 EPRL 振幅(带 k± 分裂)在专业代码库里就是这套装配的放大版——结构相同、项数更多。

实验二:截断求和的收敛

理论要求对全部内部自旋与全部复形求和,数值只能截断。截断行为是理论健康度的体检表:振幅是否随截断增大而稳定?下面用“边界自旋固定、内部求和截断逐步放宽”的工况做体检。

# 截断收敛体检: 固定边界自旋, 内部中间自旋上限逐步放宽 import numpy as np def partial_sum(j, j_cut): """中间自旋求和截断到 j_cut(可以超过边界自旋, 检验尾部贡献)""" total, ji = 0.0, 0.0 while ji <= j_cut + 1e-9: total += (2*ji + 1) * vertex_amp_uniform(j, ji) ji += 1 return total j = 2.0 prev = None for cut in [1.0, 2.0, 3.0, 4.0, 6.0, 8.0]: v = partial_sum(j, cut) delta = abs(v - prev) if prev is not None else float('nan') print(f"截断上限 {cut:.0f}: 部分和 = {v:+.6f}, 相邻变化 = {delta:.2e}") prev = v # 输出: # 截断上限 1: 部分和 = +0.003112, 相邻变化 = nan # 截断上限 2: 部分和 = +0.000892, 相邻变化 = 2.22e-03 # 截断上限 3: 部分和 = +0.000903, 相邻变化 = 1.10e-05 # 截断上限 4: 部分和 = +0.000903, 相邻变化 = 2.31e-08 # 截断上限 6: 部分和 = +0.000903, 相邻变化 = 0.00e+00 # 截断上限 8: 部分和 = +0.000903, 相邻变化 = 0.00e+00 # 判读: 该工况下三角条件自动截断求和(中间自旋超出范围时 6j 为零), # 部分和迅速稳定 —— 这是"友好"的情形。

友好工况之外,真实的数值难关必须登记。第一,复杂度爆炸:完整顶点振幅的项数随自旋上限增长极快,振幅的多重求和是高维积分,计算量随截断指数上升。第二,振荡求和:物理振幅是剧烈振荡项的求和,朴素部分和收敛慢,需要专门技术(平均法、围道变形、相干态基)。第三,截断相关:对复形尺寸的截断与对自旋的截断互相纠缠,收敛性研究至今是活跃课题——数值社区近年在“两点函数”“引力子传播子”等观测量上取得了半经典极限的正面证据,同时明确记录了模型的截断敏感性。

💡 方法论提醒:数值自旋泡沫的角色类似格点 QCD 的早期年代——先在小系统上验证理论行为,再逐步逼近物理观测量。读文献时注意区分“玩具构型上的结果”与“物理构型上的结果”,前者是脚手架,后者才是验收。

本节要点回顾

  • 装配复用:顶点振幅 = 表示论对象的多重收缩,退化工况下六个 6j 即可装配,工具间的存货直接变现。
  • 两个数值特征:包络随自旋衰减(体积因子)、符号振荡(离散作用量相位),与渐近分析互证。
  • 三大难关:复杂度爆炸、振荡求和、截断相关——当代数值研究的主战场。
  • 诚实定位:玩具构型验证结构,物理构型才是验收;两者在文献中常被混谈,读时须分辨。

协变车间的工单到此结清。第五章验布台开台:黑洞熵、大反弹、现象学——理论机器的三个输出口首次对上现实数据。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U