GEOS-Chem高分辨率模拟中GEOS-FP气象数据异常问题分析
问题背景
在GEOS-Chem 14.5.1版本的0.25×0.3125高分辨率模拟中,研究人员使用GEOS-FP气象数据时遇到了计算异常问题。该问题在模拟到2020年5月11日17:05时出现,导致模型终止运行,报错信息显示在云对流计算过程中出现了NaN(非数值)值。
问题现象
模型运行过程中首先出现大量类似以下的警告信息:
OBK(I,J)= 0.00E+00 I,J = 29 12 LDT= 1
OBK(I,J)= 0.00E+00 I,J = 10 27 LDT= 2
最终因以下错误终止:
Infinity in DO_CLOUD_CONVECTION!
K, IC, Q(K): 9 21 NaN BCPO
值得注意的是,当使用0.5×0.625分辨率的MERRA2气象数据时,模拟可以正常运行,这表明问题与高分辨率GEOS-FP数据有关。
技术分析
Monin-Obhukov长度计算
问题的根源在于干沉降计算中使用的Monin-Obhukov长度(OBK)变为零值。该参数的计算公式为:
OBK = - (空气密度 × Cp × 地表温度 × Ustar³) / (Kappa × 重力加速度 × 感热通量)
其中:
- Cp = 1000 J/kg/K(定压比热)
- Kappa = 0.4(冯卡曼常数)
在代码实现中(GeosCore/calc_met_mod.F90),为防止除以零,当分母绝对值小于等于零时,OBK会被设置为1.0e5。
气象数据异常
通过分析发现,问题发生在读取2020年5月11日17:30的GEOSFP.20200511.A1.025x03125.AS.nc4文件后。对比16:30和17:30的地表温度(T2M)场发现:
- 16:30 UTC时的T2M场分布正常
- 17:30 UTC时的T2M场出现异常值
这种异常导致Monin-Obhukov长度计算出现问题,进而影响后续的云对流计算。
解决方案
GEOS-Chem开发团队确认这是气象数据文件的问题,并重新生成了2020年5月11日的GEOS_0.25x0.3125_AS网格数据。用户更新数据后应能解决此问题。
经验总结
- 高分辨率模拟对输入数据的质量更为敏感
- 气象数据的瞬时异常可能导致模型计算失败
- 在遇到类似计算异常时,应首先检查相关时刻的输入数据
- 开发团队的数据验证流程可能需要加强,特别是对高分辨率数据
这个问题也提醒我们,在进行高分辨率模拟时,对输入数据进行预检查的重要性。建议用户在运行前对关键气象变量(如温度、通量等)进行简单的统计分析和可视化检查,以提前发现潜在问题。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考