☰
风测出来了,然后呢?从三维风矢量到 CH₄/CO₂ 通量:ASK-16 机载涡度协方差 L1→L2 链路全拆解
2026/10/1 10:29:16 网站建设 项目流程

前几篇解决了 “怎么把压力变成风”,这一篇回答 “风出来了,然后呢”——PyWingpod 只是前半场,真正的科学目标藏在后半场:CH₄/CO₂/ 潜热通量。

这个系列前几篇讲了两件事:怎么不下载官方数据就把 PyWingpod 跑通、怎么从零搭环境跑出三维风矢量(CSDN 站内搜索 “PyWingpod 环境搭建”),以及五孔探针标定与风矢量反演的全公式推导。

但有一个问题始终绕不开:

ASK-16 是一架动力滑翔机,飞一次好几个小时,最终交付的却不是风矢量,而是

通量

——CH₄、CO₂、潜热。风矢量(L1)在整条链里只是

中间产品

,通量(L2)才是论文的落点。

这篇就把 L1 → L2 这段被中文资料几乎完全忽略的链路完整拆开:从风矢量与气体浓度合并,到时延校正,到两种通量算法(Reynolds vs Morlet 小波),到质量评估四件套。并且全程用官方发布的数据包和论文附表交叉验证,还附一个我实测发现的官方数据单位坑。


〇、一分钟看懂涡度协方差

涡度协方差(Eddy Covariance, EC)的物理图像是:大气湍流把标量(CO₂、CH₄、水汽、热量)上下搬运,通量就是垂直风速脉动与标量浓度脉动之间的协方差:

KaTeX parse error: \tag works only in display equations

其中w ′ = w − w ˉ w' = w - \bar{w}w′=w−wˉ、c ′ = c − c ˉ c' = c - \bar{c}c′=c−cˉ是 Reynolds 分解后的脉动量,横杠表示时间平均。(ASK-16 数据包里F_CO2_kin等列的物理量正是w ′ w'w′与气体摩尔分数脉动的协方差,单位 mol/m²/s,即上式不乘ρ \rhoρ的形式。)

塔基 EC 大家很熟:一座塔、一个固定点、一个 30 分钟平均窗口,得到的是 “该点上方” 的一条通量时间序列。机载 EC 完全不同—— 飞机以几十 m/s 量级的空速掠过(ASK-16 空速范围 17.8~56 m/s,论文 2.1 节),测的不是一个点,而是沿航迹的一条空间剖面。这是机载 EC 与塔基 EC 最本质的差别,它决定了后面所有设计:

维度塔基 EC机载 EC(ASK-16)
观测对象固定点上方的通量时间序列沿航迹的通量空间剖面
平均窗口30 min(时间平均)2 km 空间窗口(按空速折算约 36~44 s,估算)
通量足迹上风向几百米扇形沿航迹地面一条 “足迹带”
采样频率10~20 Hz风 20 Hz、气体 10 Hz

一句话:塔基 EC 用时间换统计,机载 EC 用空间换统计。前者关注 “这里随时间怎么变”,后者关注 “这一条线上空间怎么变”。


一、L1→L2 流水线总览

论文 Fig. 2 把整条处理链分成了两段:PyWingpod(Python)负责到 L1 风矢量,eddy4R(R 语言,NEON 生态)负责 L2 通量。L1→L2 这一段长这样:

L1 三维风矢量(20 Hz, PyWingpod)   │   ├─① 与 Picarro 气体浓度合并 → 最近邻插值到 10 Hz 公共时基   ├─② 去尖峰 → 非线性中值滤波(7 点窗, Brock 1986)   ├─③ 航段划分 → 垂直段(推边界层高度) / 水平直航段(算通量)   ├─④ 时延校正 → w′ 与 CH₄/CO₂/H₂O 高通滤波互相关   ├─⑤ 通量计算(双路线)   │ ├─ Reynolds:2 km 窗 / 200 m 步长的 w′c′ 协方差   │ └─ Morlet 小波:连续小波变换 → 交叉小波谱 → 尺度积分   └─⑥ 足迹计算(Kljun 沿风向 + 高斯横风)   ↓   L2 通量产品:F\_CO₂ / F\_CH₄ / F\_LE + 质量评估

每一环节都是独立的小工程,下面逐个拆。


二、L1→L2 的处理步骤详解

2.1 合并:20 Hz 风 × 10 Hz 气体,怎么对齐?

ASK-16 的气体浓度由Picarro G2311-f 闭路腔衰荡光谱仪测量(CH₄/CO₂/ 水汽,10 Hz),而风矢量是 20 Hz。两条序列要并到一条公共时基上。

论文的做法是最近邻插值(nearest-neighbor),统一到 10 Hz。选最近邻而不是线性插值,一个客观原因是它能保留原始测量幅度—— 通量计算吃的是脉动量,线性插值会人为 “平滑” 高频脉动、压低协方差。这是通量链路里第一个 “宁糙勿滑” 的取舍。

2.2 去尖峰:为什么不能用简单阈值

激光光谱仪偶尔会吐出尖峰(气压抖动、腔体扰动),尖峰对协方差是灾难性的 —— 一个离谱的点可以直接把w ′ c ′ w'c'w′c′的平均值带偏一个量级。

论文用的是非线性中值滤波:用一个 7 点(N=3)窗口的非线性中值滤波算法检测尖峰并处理(Brock 1986;Starkenburg et al. 2016)。中值滤波的好处是对孤立尖峰免疫、且不伤真实脉动的统计结构。这比 “超过 3σ 就删” 这类简单阈值稳健得多 —— 后者在强湍流(本来就该有大脉动)时会误杀真实信号。

2.3 分段:垂直段 vs 水平直航段

合并、清洗后的数据按飞行轨迹切成两类:

  • 垂直爬升 / 下降段:用于推边界层高度(势温、相对湿度、CH₄/CO₂ 廓线);

  • 水平直航段(leg):才是算通量的素材。

只有平直、高度基本不变的航段能近似满足 EC 的稳态假设。这也是为什么数据包里所有通量产品都按Leg1~Leg5组织。

2.4 时延校正:气体分子要走一段管路

Picarro 是闭路腔衰荡光谱仪,气体信号从进气口到分析仪之间存在时间滞后。论文对滞后成因的表述是:不同传感器处理速度的差异会造成时滞(Drüe & Heinemann 2013);对机载闭路系统,这也包括气体在管路中的传输时间。滞后不校,协方差会在时移下被系统性低估 —— 这是 EC 里最经典的一类误差。

校正方法:对w ′ w'w′和浓度做高通滤波后的互相关(Hartmann et al. 2018),峰值对应的时移就是该航段的 lag。论文 Table 4 给了一组实测值:

航段Lag CH₄–wLag CO₂–wLag H₂O–w
Leg 1−1.4 s−1.4 s−4.3 s
Leg 2−1.4 s−1.4 s−4.6 s
Leg 3−1.3 s−1.4 s−4.7 s
Leg 4−1.4 s−1.4 s−4.7 s
Leg 5−1.3 s−1.4 s−4.3 s
采用值−1.4 s−1.4 s逐航段独立

三个值得注意的细节:

  1. CH₄ 与 CO₂ 稳定在 −1.4 s,于是整个航次用一个中位 lag统一校正;

  2. H₂O 的 lag 在 −4.3 ~ −4.7 s 之间波动,论文的处理是水汽必须逐航段单独定 lag,不能共用中位数;(水汽信号受管路吸附等影响更不稳定 —— 此为合理解释,论文未明确归因)

  3. 温度没有做 lag 校正——w ′ w'w′与T ′ T'T′之间测不出稳定的相关峰,说明热电偶响应足够快,不需要移。

这里的工程教训:

不同物种的滞后特性不同,不能图省事共用一个 lag

。水汽这种 “粘管壁” 的气体尤其如此。

2.5 通量计算:Reynolds 还是小波?

这是整条链路的核心分歧点。论文两种都算了,但主推小波。

路线 A:Reynolds(时域)

经典的 block-average 路线:对 2 km 窗口做 Reynolds 分解,直接算w ′ c ′ ‾ \overline{w'c'}w′c′,每 200 m 滑动一次。优点:实现简单、解释直观;缺点:2 km 窗口欠采样了低频大涡的贡献,且通量是一个窗口一个值,空间分辨率被平均掉。

路线 B:Morlet 小波(时频域)

对每个航段的所有变量做连续小波变换(Morlet 母小波,Torrence & Compo 1998),然后算w ww与标量之间的交叉小波谱,把交叉谱沿尺度(频率)积分得到通量。这一思路的标准简化表达为:

KaTeX parse error: \tag works only in display equations

(论文正文只描述了 “对交叉小波谱积分” 的流程,上式是 Torrence & Compo 框架下的通用简化写法,非论文原式,此处仅作示意。)

小波的好处是同时保留时间和频率信息:

  • 大尺度(低频)涡的贡献被显式包含,不再被窗口截断;

  • 通量可以按 200 m 步长连续输出,得到一条空间剖面,而不是每 2 km 一个点;

  • 对非平稳航段更鲁棒。

代价也很实在:交叉小波谱对单段随机误差的敏感性更高(论文 Table 6 里 RE_wavelet 高达 108~134%,而 RE_Reynolds 约 30~38%,详见第五节)。

参数选择:2000 m 窗口、200 m 步长。论文说明该窗口 / 步长组合参考了 Metzger et al. (2012, 2013),综合飞行高度(ASK-16 约 150–250 m 高)、大气混合与地表特征尺度权衡得出 —— 窗口越长随机误差越小(随机误差与平均长度的平方根成反比,Lenschow & Stankov 1986),但空间分辨率越差。

2.6 足迹(Footprint):通量是 “哪块地” 的?

通量算出的是飞机下方一整条混合信号,要回答 “这块通量对应地面上哪片区域”,就要算足迹。ASK-16 用的是Kljun et al. (2004) 沿风足迹 + 高斯横风分布的组合(Metzger et al. 2012),输入是摩擦速度、飞行高度、σ u \sigma_uσu​、σ w \sigma_wσw​、边界层高度和粗糙度长度。

这一步的意义在下游:把通量剖面叠加上足迹权重,就能生成通量地形图(flux topography)—— 把 CH₄ 排放峰值精确对应到泥炭地斑块。这正是机载 EC 相比塔基 EC 的核心竞争力。


三、真实数据长什么样:打开 180 KB 的通量包

官方通量数据包ASK16_Flux_data.zip只有180 KB(和 662 MB 的 L1 包形成鲜明对比 —— 因为它是聚合后的最终产品),含 2018-08-29 一个航次、5 个航段的三种产品:

文件模式内容
*_REYN_mn.csvReynolds 通量(含位置、风、浓度、通量全字段)
*_WAVE_mn.csvMorlet 小波通量(纯通量字段)
*_WAVE_itcs.csv积分湍流特征 ITCS + 质量旗标

每个文件 108~116 个数据行 = 一个航段约 22~23 km,每 200 m 一个通量段。这就是 “200 m 空间分辨率” 的直接体现。

WAVE 文件的关键列(单位以官方说明 xlsx 为准,我已逐列核对):

变量单位含义
u_starm/s摩擦速度
F_H_kin/F_H_enK·m/s / W/m²感热通量(动力学 / 能量单位)
F_LE_kin/F_LE_enmol/m²/s / W/m²潜热通量
F_CH4_kin/F_CH4_massmol/m²/s / mg/m²/h甲烷通量
F_CO2_kin/F_CO2_massmol/m²/s / g/m²/hCO₂ 通量
w_starm/sDeardorff 对流速度尺度

我下载数据包后对 5 个航段的 WAVE 通量做了统计,并和论文 Table 5 的 leg 级 Reynolds 通量对照:

航段F_CO₂ 均值 (g/m²/h)论文 Table 5 (g/m²/h)F_CH₄ 均值 (mg/m²/h)论文 Table 5 (mg/m²/h)
Leg 1−1.290−1.31+1.531.31
Leg 2−1.031−1.00+1.181.48
Leg 3−1.341−1.36+1.631.99
Leg 4−1.234−1.24+1.741.63
Leg 5−1.009−1.24+1.311.41

两点结论:

  1. CO₂ 全部为负(吸收)、CH₄ 全部为正(排放)—— 这正是 8 月底德国东北部农田 + 森林 + 泥炭地下垫面的典型格局,与论文 Fig. 12 的空间分布一致;

  2. 我独立算的 WAVE 段均值与论文发布的 leg 级通量逐航段对照:前 4 个航段吻合到 0.01~0.03 g/m²/h,Leg 5 相差 0.23 g/m²/h(我的值 −1.009,论文 −1.24)。整体量级与符号完全一致,说明按官方流程走完 L1 后,L2 的通量可以复现。(Leg 5 的差值可能来自小波与 Reynolds 两种算法对低频贡献的不同包含程度 —— 论文本身也说明二者存在系统性差异。)


四、我实测发现的一个单位坑:REYN 文件的 CO₂ 差 1000 倍

这是我逐列核对变量说明时撞出来的,写在这里免得后来人拿错数。

REYN 文件的说明 xlsx 明确写F_CO2_mass单位为g/m²/h,但把 kin 列换算一下就会发现对不上:

以 Leg 1 第 1 段为例:

F\_CO2\_kin = -2.41e-06 # mol/m²/s \# 换算到 g/m²/h:× 44.01 g/mol × 3600 s/h F\_CO2\_mass = -2.41e-06 × 44.01 × 3600 ≈ -0.382 g/m²/h

而 REYN 文件里F_CO2_mass = -380.96——恰好大了 1000 倍。同文件F_CH4_mass却自洽(kin 换算 1.74 mg/m²/h ≈ 文件值 1.737)。

结论:REYN 文件的F_CO2_mass列实际单位是 mg/m²/h(或等价地,数值被放大了 1000 倍),与标注的 g/m²/h 不符。而 WAVE 文件的同名列换算自洽、单位标注正确(我用 kin→mass 双向换算验证过)。

实践建议:

做量级分析前先用 kin 列独立换算一次

,交叉验证 mass 列的单位;尤其当两种算法的 “同一物理量” 数值相差几个数量级时,先查单位而不是先怀疑算法。


五、为什么小波通量是主角:两种算法的差距对照

论文 Fig. 11 用一条典型航段对比了两种 CO₂ 通量(注:论文正文称 first flight leg、图注标 leg 2,两处编号不一致,这里不做仲裁):

  • 交叉小波谱(cross-scalogram):蓝色主导 = 全程以 CO₂ 吸收为主,还能看出吸收在空间上随下垫面变化;

  • Reynolds 段通量(虚线):趋势一致,但更小、更噪—— 因为 2 km 窗口欠采样了低频(大涡)贡献,这与论文原话一致。

论文给出的随机误差对照(Table 6,CO₂ 为例,5 个航段 + 全航次汇总):

误差类型WaveletReynolds
系统误差 SE0.7~0.9%(均 0.8%)0.9~1.2%(均 1.0%)
随机误差 RE(单段)108~134%(均 124%)30~38%(均 34%)
RE(Billesbach 洗牌法,整航段)6.6~11.0%(均 9.2%)—

(CH₄ 的 RE 整体高一档:单段 Reynolds 90~113%、小波 322~433%;LE 的 Reynolds 单段 RE 约 45~50%。)

这里有个反直觉的点:小波单段随机误差反而更大(论文只陈述了这一数值规律 ——Reynolds 单段 <100%、小波单段>100%;一个合理解释是小波显式包含了更多低频信息,单段估计对低频波动更敏感)。但它的价值在空间分辨率和低频完整性—— 你拿到的是 200 m 一条的通量剖面,而不是 2 km 一个点。论文还特别说明:相邻 200 m 段共享 2 km 窗口、90% 重叠,样本自相关显著,若不修正会把集合随机误差人为压低,所以做误差估计时要用有效样本量N e f f N_{eff}Neff​修正:

KaTeX parse error: \tag works only in display equations

ρ ( k ) \rho(k)ρ(k)是滞后 k 的自相关函数。用N e f f N_{eff}Neff​代替N NN,才能正确估计重叠样本下的集合随机误差 —— 不修正会把误差低估一大截。


六、通量质量四件套:你怎么知道通量可信

机载 EC 只在 “稳态 + 充分发展湍流” 下成立(Foken, 2017)。论文对每个通量段做了四层体检:

① 稳态检验(stationarity):趋势分析 + Foken & Wichura (1996) 与 Vickers & Mahrt (1997) 的内非平稳分析。Leg 1 的 CH₄/CO₂ 未通过,其余航段通过。未通过的段不是不能用,而是要被标记—— 它提示该段通量受非平稳过程污染。

② 积分湍流特征(ITCS):实测与理论模型的σ u \sigma_uσu​、σ w \sigma_wσw​、u ∗ u_*u∗​之比(Thomas & Foken 2002),比值 ≤100% 表示湍流发展充分。5 个航段全部达标(u: 36.7~50.1%,w: 9.6~15.0%,u*: 38.9~50.1%)。

③ 检测限(detection limit):Billesbach (2011) 随机洗牌法 —— 把序列随机打乱重算通量,打乱后的 “通量” 分布宽度就是该仪器配置的检测下限:

通量检测限实测段通量
LE6.0~8.1 W/m²73.8~128 W/m²
CH₄0.35~0.52 mg/m²/h1.31~1.99 mg/m²/h
CO₂0.09~0.13 g/m²/h−1.00~−1.36 g/m²/h

检测限比实测通量低一个到两个量级:LE 低约 9~21 倍、CO₂ 低约 8~15 倍、CH₄ 低约 2.5~5.7 倍(甲烷信号本身较弱)。总体说明这套传感器配置对当地通量强度绰绰有余。这是判断 “平台够不够灵敏” 的黄金标尺。

④ 系统 / 随机误差(SE/RE):Mann & Lenschow (1994) 公式。SE 普遍 ≤1%(标定误差被控制住了),RE 是主导项 —— 论文给出的单段通量随机误差范围是LE 和 CO₂ 约 30~40%、CH₄ 约 80~100%(Reynolds 口径),且CH₄ 通量越小、RE 越大(论文此结论与 Wolfe et al. 2018 的观测一致;直观理解是小信号在湍流噪声里更难分辨)。

论文还给了更粗粒度的 “重复测量不确定度”:5 条航段重复飞同一剖面,每 200 m 段的变异性为 CH₄ 86.2±57.7%、CO₂ 32.9±12.9%、LE 36.6±13.0%。CH₄ 剖面起伏巨大—— 这正是泥炭地甲烷排放的斑块特征,也说明单次航段的 CH₄ 通量必须结合足迹和多次重复才能下结论。


七、从通量到科学:L2 产品的真正价值

2018-08-29 这次飞行的科学结果是教科书级的(论文 Fig. 12):

  • CO₂ 吸收峰值出现在森林 + 泥炭地覆盖 63.5% 的区域(吸收 −1.3 g/m²/h 量级);

  • CH₄ 排放峰值出现在森林覆盖 50% + 泥炭地覆盖 22%(合计 72%)的区域(排放 1.99 mg/m²/h 量级);

  • 潜热通量变异性最大的区域也正是泥炭地占比最高的区域。

机载 EC 的价值在这里显现:塔基 EC 只能告诉你 “站点上方通量变了”,机载 EC 直接告诉你 **“哪块地贡献了哪个通量”—— 把通量 × 足迹叠起来,就是一张可和土地覆盖分类、卫星遥感对照的通量地形图 **。这也是论文展望里 “物理引导 AI + 地球观测 → 区域通量制图” 的前置能力。


八、系列四篇:一张完整地图

到这里,这个系列终于闭环了:

篇解决的问题链路位置
① 最小实现数据拿不到,算法还能不能验证?L0→L1 验证方法论
② 环境搭建实操怎么把链路真正跑起来?L0→L1 实操
③ 算法原理推导压力是怎么变成三维风的?L0→L1 数学
④ 通量链路(本篇)风出来了,通量怎么算?L1→L2 全流程

前几篇的合成数据沙盒在 L2 阶段同样成立:你完全可以合成一组带已知通量真值的w ′ c ′ w'c'w′c′序列,喂给 Reynolds / 小波实现,验证 “通量反演是否正确”—— 就像第一篇验证风矢量那样。通量链路的验证难点在时延和低频截断,不在协方差本身。


九、总结

把 L1→L2 这条链收束成三句话:

  1. 机载 EC 用空间换统计:风 20 Hz × 气体 10 Hz 合并 → 去尖峰 → 分段 → 时延校正 → 通量,全程目标是把一条 22 km 航迹变成 200 m 分辨率的通量剖面;

  2. 小波是主角,Reynolds 是参照:小波保住低频大涡和空间分辨率,代价是单段随机误差更大,需要用有效样本量修正;

  3. 通量产品必须配质量四件套:稳态、ITCS、检测限、SE/RE—— 没有检测限的通量数字没有意义,没有 ITCS 的 “可信” 没有依据。

以及一个实操提醒:用官方数据前先做一次 kin→mass 单位互算,我已经替你们踩出一个差 1000 倍的坑了。


参考资料

  • Wiekenkamp, I., Lehmann, A. K., Bülow, A., Hartmann, J., Metzger, S., Ruhtz, T., Wille, C., Zöllner, M., and Sachs, T.:The ASK-16 motorized glider: an airborne eddy covariance platform to measure turbulence, energy, and matter fluxes, Atmos. Meas. Tech., 18, 749–772, https://doi.org/10.5194/amt-18-749-2025, 2025.(CC-BY-4.0)

  • 数据集:Airborne Wind and Eddy Covariance Dataset(含 ASK16_Flux_data.zip), GFZ Data Services, https://doi.org/10.5880/GFZ.1.4.2024.003 (CC-BY-4.0)

  • PyWingpod v1.0.0, GFZ Data Services, https://doi.org/10.5880/GFZ.1.4.2024.004 (BSD-3-Clause)

  • Metzger, S., Junkermann, W., Mauder, M., Beyrich, F., Butterbach-Bahl, K., Schmid, H. P., and Foken, T.:Eddy-covariance flux measurements with a weight-shift microlight aircraft, Atmos. Meas. Tech., 5, 1699–1717, 2012.

  • Metzger, S., Junkermann, W., Mauder, M., Butterbach-Bahl, K., Trancón y Widemann, B., et al.:Spatially explicit regionalization of airborne flux measurements using environmental response functions, Biogeosciences, 10, 2193–2217, 2013.

  • Hartmann, J., Gehrmann, M., Kohnert, K., Metzger, S., and Sachs, T.:New calibration procedures for airborne turbulence measurements and accuracy of the methane fluxes during the AirMeth campaigns, Atmos. Meas. Tech., 11, 4567–4581, 2018.

  • Torrence, C. and Compo, G. P.:A Practical Guide to Wavelet Analysis, Bull. Amer. Meteor. Soc., 79, 61–78, 1998.

  • Foken, T. and Wichura, B.:Tools for quality assessment of surface-based flux measurements, Agr. Forest Meteorol., 78, 83–105, 1996.

  • Vickers, D. and Mahrt, L.:Quality Control and Flux Sampling Problems for Tower and Aircraft Data, J. Atmos. Ocean. Tech., 14, 512–526, 1997.

  • Thomas, C. and Foken, T.:Re-evaluation of Integral Turbulence Characteristics and their Parameterisations, AMS Symposium on Boundary Layers and Turbulence, 15, p. 129, 2002.

  • Billesbach, D. P.:Estimating uncertainties in individual eddy covariance flux measurements: A comparison of methods and a proposed new method, Agr. Forest Meteorol., 151, 394–405, 2011.

  • Brock, F. V.:A nonlinear filter to remove impulse noise from meteorological data, J. Atmos. Ocean. Tech., 3, 51–58, 1986.

  • Kljun, N., Calanca, P., Rotach, M. W., and Schmid, H. P.:A Simple Parameterisation for Flux Footprint Predictions, Bound.-Lay. Meteorol., 112, 503–523, 2004.

  • Mann, J. and Lenschow, D. H.:Errors in airborne flux measurements, J. Geophys. Res., 99, 14519–14526, 1994.

  • Lenschow, D. H. and Stankov, B. B.:Length Scales in the Convective Boundary Layer, J. Atmos. Sci., 43, 1198–1209, 1986.

本文涉及的论文、数据集、源码均为公开成果,按原许可证(CC-BY-4.0 / BSD-3-Clause)使用并标注出处;文中 “REYN 文件 CO₂ 单位差 1000 倍” 为本人对官方数据的独立换算发现,其余通量统计为本人对公开数据的复算。文中所有论文数值均直接引自 AMT 18, 749–772 正文与 Table 4/5/6;正文引用的其余文献(如 Starkenburg et al. 2016、Foken 2017、Drüe & Heinemann 2013)详见该论文的参考文献列表。本文为原创解读,未声称拥有任何第三方素材权利。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询