前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >雷达数据处理和风场反演

雷达数据处理和风场反演

作者头像
MeteoAI
发布2019-07-24 17:15:42
10K85
发布2019-07-24 17:15:42
举报
文章被收录于专栏:MeteoAIMeteoAI

强对流活动通常会伴随降水、降雹和龙卷风等现象,气象雷达常用于探测上述天气现象,并可以根据雷达观测数据采用外推等方法进行短临预报。

对于科学研究和天气预报来说非常重要。

气象雷达观测所产生的数据通常是二进制格式,需要根据对应的数据说明文档进行解码,然后生成雷达产品。

雷达数据处理

目前我国已经布设了较为密集的气象雷达观测网,针对不同的地区特点选择了不同波段雷达[1]。

用于处理气象雷达数据的Python库相对较多,比如PyARTwradlibPyCINRAD等。

PyARTwradlib可以处理多种格式的雷达数据,但主要格式均为美国天气雷达数据格式。这两个库均提供了雷达数据的校正功能,此外wradlib还可以根据雷达回波进行粒子识别和分类,还可以进行降雨估计及结果调整

PyCINRAD为国内开发者利用Python开发的用于处理国内常见气象雷达格式的开源库,目前实现了数据处理和可视化功能。

PyART和wradlib的用户较多,而且不少额外的雷达产品库(比如雷达风场反演湍流的检测评估等)都提供了相应的接口直接处理PyART的输出对象。

为了更好的利用Python的气象雷达生态库,添加了国内常见的雷达数据格式处理接口到PyART[2]中。目前已经实现了SA波段多普勒雷达和部分C波段双偏振多普勒雷达数据的处理接口。

双偏振雷达普通多普勒雷达的区别在于:双偏振雷达可以在水平和垂直方向上发送和接收脉冲信号,而普通多普勒雷达仅能在水平方向上发送和接收脉冲信号。

SA波段雷达数据处理

SA雷达基数据存储结构较为简单,只需要根据格式说明文档进行顺序解码即可,具体的解码细节参考:pyart.io.sband_radar

以下为使用PyART处理SA雷达数据的示例:

代码语言:javascript
复制
import matplotlib.pyplot as plt

import pyart
from pyart.io.sband_archive import read_sband_archive

filename = 'Z_RADR_I_Z9250_20190409022800_O_DOR_SA_CAP.bin'
sradar = read_sband_archive(filename)

fig, ax = plt.subplots(figsize=(12, 9))

srdisplay = pyart.graph.radardisplay.RadarDisplay(sradar)
srdisplay.plot_ppi('reflectivity', 0, vmin=0, vmax=70)

fig.savefig('sa_radar.png', dpi=300, bbox_inches='tight')

0.5度仰角雷达反射率

C波段双偏振雷达数据处理

相比于S波段雷达而言,C波段双偏振多普勒雷达具有不少优点,比如:

•在识别目标物的大小、形状和种类时具有更好的表现;•在降水估测方面具有更高的准确率;•能够区分强降雨、冰雹、雪和雨夹雪•改进了非气象回波的探测,比如地物阻挡、鸟群、龙卷带到空中的物体等;•飞机结冰条件的探测;•融化层(bright band)的识别等

由于双偏振雷达的观测量增多,其数据存储结构相对SA雷达而言也较为复杂,因此在处理起来相对SA雷达麻烦一些。关于C波段双偏振雷达的数据的具体解码细节可查看pyart.io.C98DRadFile

以下为使用PyART处理C波段双偏振雷达示例:

代码语言:javascript
复制
from pyart.io.c98d_archive import c98dfile_archive

cradar = c98dfile_archive('NUIST.20140928.070704.AR2')
cdisplay = pyart.graph.RadarDisplay(cradar)

fig = plt.figure(figsize=(12, 9))

# plot super resolution reflectivity
ax = fig.add_subplot(111)
cdisplay.plot('dBZ', 0, title='C-band WSR-98D Radar Reflectivity',
              vmin=0, vmax=70, colorbar_label='reflectivity factor(dBZ)', ax=ax)

fig.savefig('dual_pol.png', dpi=300, bbox_inches='tight')

双偏振多普勒雷达反射率

风场反演

Pyhton库中提供了多个基于气象雷达径向风的风场反演开源库,比如SingleDop、MultiDop、PyDDA等。SingleDop主要是针对单多普勒雷达的风场反演,MultiDop和PyDDA是基于多个多普勒雷达的风场反演工具。

上述三个库均可以和PyART无缝衔接,无需再进行过多的处理。以下以SingleDop反演SA雷达风场为例:

代码语言:javascript
复制
import singledop

wind = singledop.SingleDoppler2D(radar=sradar, 
                                 grid_spacing=0.25,
                                 L=1, 
                                 sweep_number=1, 
                                 name_vr='velocity',
                                 thin_factor=[4, 4],
                                 grid_edge=120,
                                 sigma=1
                                 )

swdisplay = singledop.AnalysisDisplay(wind)

fig, ax = plt.subplots(figsize=(9, 9))
swdisplay.plot_velocity_vectors(ax=ax, legend=10)

ax.set_xlim([-100, 100])
ax.set_ylim([-100, 100])

fig.savefig('sa_wind.png', dpi=300, bbox_inches='tight')

SA反演风速

由于没有其他格式雷达数据的测试数据和说明文档,因此,目前仅支持SA和WSR-98D雷达数据的解码。

PyDDAPyTDA库的兼容还需要进行一些调整和测试。

关于SA波段和上述C波段WSR-98D雷达数据的说明文档可直接下载查看[3]

后台回复 pyart 获取完整示例代码和测试文件。完整示例代码为jupyter notebook,包含了反射率和径向速度的处理及风场反演,其中包含了一些推送中未提及的细节。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-07-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 MeteoAI 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 雷达数据处理
    • SA波段雷达数据处理
      • C波段双偏振雷达数据处理
      • 风场反演
      相关产品与服务
      数据保险箱
      数据保险箱(Cloud Data Coffer Service,CDCS)为您提供更高安全系数的企业核心数据存储服务。您可以通过自定义过期天数的方法删除数据,避免误删带来的损害,还可以将数据跨地域存储,防止一些不可抗因素导致的数据丢失。数据保险箱支持通过控制台、API 等多样化方式快速简单接入,实现海量数据的存储管理。您可以使用数据保险箱对文件数据进行上传、下载,最终实现数据的安全存储和提取。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档