1.2 周期与频率:衡量一台钟的三把尺子


1.2 周期与频率:衡量一台钟的三把尺子

本节摘要:周期与频率互为倒数,是钟的语言;评价一台钟要用三把不同的尺子——准确度、稳定度、分辨率。本节把 1.1 节的操作性定义翻译成可计算的量,解释为什么全册用阿伦方差而不是标准差来谈稳定度,并给一段可以直接运行的计算代码。

上一节把时间测量定义成"对周期过程的计数",本节就把这句话兑现成数字:周期怎么量、频率偏差怎么换算成日误差、稳定度怎么从噪声里估出来。这节的内容会贯穿全书——第三章谈原子钟指标、第五章谈链路误差、第七章谈验收标准,用的全是这里的词汇。

先把振荡写成一个公式

任何钟的核心都是一个振荡器,它的输出可以写成 s(t) = A·sin(2πν₀t + φ(t))。理想情况下 ν₀ 恒定、φ 随时间线性增长;真实情况是 ν₀ 会漂、φ 会抖。于是有两种视角看同一件事:时域看相位抖动在时间轴上造成的读数起伏,频域看功率谱上的噪声边带。两种视角等价,工程文档里更常见的是时域稳定度曲线,本节也以它为主。

衡量振荡器"灵不灵",还有一个无量纲的品质因数——品质因数 Q = ν₀/Δν,中心频率除以谱线宽度。摆钟的 Q 在十的三次方量级,石英谐振器在十的四次方到六次方,铯原子跃迁能到十的八次方以上,光频跃迁按线宽算可以超过十的十四次方。Q 值每抬几个数量级,"把频率看准"的能力就换一代,这正是 1.3 节演进时间线背后共同的物理量。

三把尺子:准确度、稳定度、分辨率

准确度(accuracy)回答"你走得多对":输出频率与定义值(比如铯跃迁的 9 192 631 770 赫兹)之间的系统偏差能压到多小。它是可以通过建模修正的量,守时文档里的"不确定度"大多指它。

稳定度(stability)回答"你走得多么一致":对同样的平均时长,读数波动有多大。它与"对不对"无关——一台每天稳定地快十分钟、误差几乎不散的钟,稳定度极好而准确度很差;反过来,只要它的偏差可预测,就能被校准成好钟。这个反例值得记住:可预测的错,比不可预测的对更有价值。

分辨率(resolution)回答"你能读得多细":数字钟显示到毫秒,分辨率就是毫秒,哪怕它内部振荡器的稳定度根本撑不起这个位数。产品页面上吓人的小数点位数常常是分辨率,不是精度。

尺子 回答的问题 典型表征 腕表例子
准确度 与真值的系统偏差 相对频率偏差、不确定度 每月快十五秒,约 6×10⁻⁶
稳定度 读数的随机起伏 阿伦偏差 σy(τ) 每天偏差浮动一秒上下
分辨率 读数的最小刻度 显示位数、量化步长 秒显示,最小一格是一秒

换算关系要练到肌肉记忆:日误差除以八万六千四百秒,就是相对频率偏差。每天快一秒是 1.16×10⁻⁵,每天差一微秒是 1.16×10⁻¹¹,导航卫星钟要压到每天差不超过十纳秒量级,对应 10⁻¹³。以后看到任何"日快多少",都应当在脑子里立刻翻译成数量级。

为什么用阿伦方差,而不用标准差

估计稳定度,最自然的想法是对采样频率序列算标准差。但频率噪声里有种成分叫闪烁噪声(1/f 噪声),它的标准差随样本数增加而不收敛——数据越多,估计值越发散,这个统计量直接报废。1966 年 David Allan 提出的双样本方差绕开了这个坑:

σy²(τ) = ⟨ (y₂ − y₁)² ⟩ / 2

其中 y₁、y₂ 是相邻两段、每段长 τ 的平均频率。它对常见噪声类型都收敛,而且曲线形状自带诊断信息:白噪声调频段斜率为 −1/2,闪烁噪声调频段是平的,随机游走段斜率为 +1/2。守时实验室墙上贴的"稳定度-平均时间"双对数曲线,横轴 τ 从一秒到一个月,纵轴从 10⁻¹³ 降到 10⁻¹⁵ 以下,说的就是它。第三章还会回到这条曲线,看氢脉泽、铯钟、光钟各自的曲线长什么样、为什么长那样。

动手算一次

下面这段 Python 代码不依赖任何专业库,直接从频率采样序列算阿伦偏差,可以照着跑一遍:

import math def allan_deviation(freqs, tau0): """freqs: 等间隔采样的相对频率偏差序列; tau0: 采样间隔(秒)""" n = len(freqs) devs = [] for m in range(1, n // 2): tau = m * tau0 s = 0.0 cnt = 0 for i in range(0, n - 2 * m): y1 = sum(freqs[i:i + m]) / m # 第 i 段平均频率 y2 = sum(freqs[i + m:i + 2 * m]) / m # 相邻下一段 s += (y2 - y1) ** 2 cnt += 1 devs.append((tau, math.sqrt(s / (2 * cnt)))) return devs # 模拟一台铯钟:白噪声调频,1 秒稳定度 5e-13 import random random.seed(7) sigma = 5e-13 samples = [random.gauss(0, sigma) for _ in range(2000)] for tau, sy in allan_deviation(samples, 1.0): if tau in (1, 10, 100, 1000): print(f"tau={tau:>5}s sigma_y={sy:.3e}") # 输出量级参考:白噪声调频下 sigma_y 应稳定在 5e-13 附近, # 不会像标准差那样随数据长度漂移

跑完可以顺手做个实验:把噪声换成随机游走(对上一行输出累加),观察曲线斜率翻成正的二分之一。这个手感比任何定义都直观。

💡 关键直觉:三把尺子里,稳定度是"原材料"——稳定度不够,准确度无从谈起;准确度是"成品率"——靠系统误差建模把可预测的偏差修掉;分辨率只是"包装"。看一台钟,先看稳定度曲线的拐点,再看准确度预算表,最后才看广告页。

⚠️ 常见坑:把"精度"当万能词。同一份说明书里,"精度 1×10⁻¹¹"可能指稳定度、也可能指准确度,两者相差可达两个数量级。签采购合同前,先逼着供应商写清楚是阿伦偏差还是最大频率偏差。

本节要点回顾

  • 周期与频率:f = 1/T,频率偏差乘以观测时长就是时刻误差,日误差换算是全册最常用的口算。
  • 三把尺子:准确度对"对不对",稳定度对"齐不齐",分辨率只是读数刻度;可预测的偏差可以校掉,不可预测的抖动校不掉。
  • 品质因数 Q:从摆钟的十的三次方到光频跃迁的十的十四次方以上,Q 的代际跳升是演进主线的定量骨架。
  • 阿伦方差:双样本结构绕开闪烁噪声下标准差不收敛的问题,曲线斜率还能反推噪声类型。
  • 下一站:拿着这三把尺子,去给从日晷到光钟的历代计时器逐一打分——这就是 1.3 节。

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