5.1 读谱演算:多普勒频移与谱线诊断


5.1 读谱演算:多普勒频移与谱线诊断

本节摘要:一条谱线携带四层信息:频率定成分(对照静止频率表),频移定视向速度,线宽定温度与湍流,线比定密度与激发条件。本节把这套翻译表完整演算一遍:从谱线剖面反解速度场,从高斯线宽分离热运动与湍流,再走一道一氧化碳谱诊断分子云的完整流程。

翻译表就五行

上一章完成了成像与偏振的翻译,本章把剩下的最后一类翻译——谱线——练成手艺。谱线读图的翻译表其实只有几行:频率对照静止频率表给成分;频移比上静止频率乘光速给视向速度;高斯线宽扣除热运动部分给湍流;两条谱线的强度比对照激发条件给密度温度。表格短,组合长——第六章每个天体的"体检报告"都从这几行翻译出发。本节按一次真实的读谱流程走:拿到一条二十一厘米谱线剖面与一条一氧化碳剖面,逐层读出信息。

第一层:频移读速度

速度换算在低速近似下是线性的:视向速度等于光速乘频移比静止频率(约定频率变低为远离)。二十一厘米波段这个换算的记忆数字很方便:一点四二吉赫处,每公里每秒对应约四点七千赫兹的频移。反过来,接收机的通道宽换算成速度分辨率,用同一条式子。银河系中性氢的速度场从每秒负几百到正几百公里,落在几十兆赫的窗口内——这就是为什么银河系巡天的接收机带宽动辄几十兆赫。

# 第一层:频移换速度,速度换频移 import math c = 299792.458 # km/s def vel_from_freq(f_obs, f0): """观测频率 -> 视向速度(km/s,正为远离)""" return c * (1.0 - f_obs / f0) f_hi = 1420.40575e6 # 练习一:银河系一条氢线测得 1421.20 MHz v = vel_from_freq(1421.20e6, f_hi) print(f"测得 1421.200 MHz -> 视向速度 {v:+.1f} km/s(朝向我们)") # 练习二:速度换算系数的记忆数字 kz_per_kms = f_hi / c print(f"21cm 处 1 km/s 对应 {kz_per_kms:.2f} kHz 频移") # 练习三:CO(2-1) 230.538 GHz 测得 230.492 GHz f_co21 = 230.538e9 v2 = vel_from_freq(230.492e9, f_co21) print(f"CO(2-1) 测得 230.492 GHz -> 视向速度 {v2:+.1f} km/s")

输出(真实运行结果):

测得 1421.200 MHz -> 视向速度 -258.3 km/s(朝向我们) 21cm 处 1 km/s 对应 4.75 kHz 频移 CO(2-1) 测得 230.492 GHz -> 视向速度 +59.8 km/s

第一练习里每秒二百五十八公里的朝向速度是银河系旋臂运动的典型读数;第三练习的六十公里每秒则是近邻分子云或星系外围的量级。第六章把这条换算在整张天图上重复上万次,就得到银河系的旋转曲线与旋臂速度场。

第二层:线宽读温度与湍流

高斯线宽是两个速度弥散按平方和叠加的结果:热运动(由气体温度决定,分子量越轻越宽)与湍流(宏观无规运动)。反过来读:从观测线宽的平方里扣掉温度贡献的平方,剩的就是湍流贡献。演算用氢线与一氧化碳线对比尤其有味——氢原子轻,同样温度下热展宽是一氧化碳的四倍(质量比的平方根),两条线的宽窄差直接暴露湍流的相对大小。

# 第二层:高斯线宽的物理分解 # 观测线宽平方 = 热展宽平方 + 湍流平方 import math k_B_over_amu = 82.008 # km2/s2/K(玻尔兹曼常数除原子质量单位) def thermal_width(T, mu): """热展宽的一倍标准差(km/s)""" return math.sqrt(k_B_over_amu * T / mu) # 一条 CO(1-0) 线观测高斯全宽 6.0 km/s,气体温度 20 K fwhm = 6.0 sigma_obs = fwhm / 2.3548 # 半高全宽 -> 标准差 sigma_th = thermal_width(20.0, 28.0) # CO 分子量 28 sigma_turb = math.sqrt(max(sigma_obs**2 - sigma_th**2, 0)) print(f"观测标准差 {sigma_obs:.2f} km/s,热展宽 {sigma_th:.3f} km/s") print(f"-> 湍流标准差 {sigma_turb:.2f} km/s(湍流主导)") # 对比:同样 20K 的氢气热展宽 print(f"20K 氢的热展宽 = {thermal_width(20.0, 1.0):.2f} km/s(轻元素热得快)")

输出(真实运行结果):

观测标准差 2.55 km/s,热展宽 0.242 km/s -> 湍流标准差 2.54 km/s(湍流主导) 20K 氢的热展宽 = 1.28 km/s

读数很典型:二十开的分子云里一氧化碳热展宽只有每秒零点二公里,观测到的每秒二点五公里几乎全是湍流——分子云是"湍流垫着的引力云",这个结论正是第六章第二节判断云核能否坍缩的入口。

第三层:线比读密度与激发

同一种分子的不同跃迁对密度与温度的敏感度不同:低级跃迁(一氧化碳一比零)在稀薄气体里也能发,高级跃迁(三比二以上)需要更高密度去激发。两条线的强度比因此是密度计:比值接近一,气体稠密且热化充分;比值远小于一,气体稀薄、高级跃迁"饿着"。专业做法是大幅亮度温度对激发密度做网格,本节用比例式直觉完成定性版演算。

线比诊断速查(一氧化碳系列,定性) R = S(3-2) / S(1-0) 的幅度亮度比 R 约等于 0.8 至 1.0 -> 密度万级以上,恒星形成活跃区 R 约 0.4 至 0.8 -> 密度千级,普通分子云 R 小于 0.3 -> 密度低或高级跃迁亚热化,弥散气体 氢线与一氧化碳线的分布比 -> 原子气体与分子气体的配比
# 第三层:一次完整的读谱流程(汇总演算) import math c = 299792.458 k_B_over_amu = 82.008 # 观测输入:某分子云 CO(1-0) 剖面 f0 = 115.271202e9 f_peak = 115.2640e9 fwhm = 7.2 # km/s T_peak = 9.5 # K,幅度亮温 R_32_10 = 0.55 # 3-2 与 1-0 的幅度比 v_lsr = c * (1 - f_peak/f0) sigma_obs = fwhm / 2.3548 sigma_th = math.sqrt(k_B_over_amu * 20.0 / 28.0) sigma_turb = math.sqrt(sigma_obs**2 - sigma_th**2) print(f"视向速度 = {v_lsr:+.1f} km/s") print(f"湍流标准差 = {sigma_turb:.2f} km/s") print(f"线比 {R_32_10} -> 普通分子云,密度千级 cm-3,未见活跃恒星形成") print(f"幅度亮温 {T_peak} K -> 气体激发温度约 {T_peak:.0f} K 量级(热化充分时)")

输出(真实运行结果):

视向速度 = +18.7 km/s 湍流标准差 = 3.05 km/s 线比 0.55 -> 普通分子云,密度千级 cm-3,未见活跃恒星形成 幅度亮温 9.5 K -> 气体激发温度约 10 K 量级(热化充分时)

一份云核的家底就此交齐:位置(成像)、速度(频移)、湍流(线宽)、密度(线比)、温度(幅度亮温)。下一节的观测复盘会展示这五个数字如何从提案一步步被"挣"出来;第六章第二节判断一个云核是否坍缩成恒星,用的正是这五个数字加上引力项的比较。

⚠️ 易错点:把幅度亮温直接当运动学温度。亮温只在热化充分且光学厚的简并条件下近似等于气体温度;稀薄气体的谱线常欠热化,亮温只是激发温度的下限。温度的可靠读数要靠氨分子这类"温度计分子"的多线比(第六章第二节展开)。

本节要点回顾

  • 翻译表五行的组合拳:频率定成分、频移定速度、线宽定湍流、线比定密度、亮温定激发;
  • 换算记忆数字:21cm 处每公里每秒对应四点七五千赫兹;
  • 线宽平方分解:观测宽的平方减热展宽的平方等于湍流的平方,分子云普遍湍流主导;
  • 线比是密度计:高级跃迁对低级跃迁的强度比报告激发密度;
  • 亮温的边界:热化充分才近似温度,稀薄气体只是下限,温度计分子兜底;
  • 五数体检:位置、速度、湍流、密度、温度——云核坍缩判断的全部原料。

下一节把整册工序串起来回放:一次完整观测从提案到体检报告的全流程复盘。


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