Python处理X波段相控阵双偏振雷达基数据

PyCINRAD     

PyCINRAD号称国内最强大的雷达数据处理工具,支持多种CINRAD雷达数据格式,兼容性强,横扫CMA雷达基数据和产品,国内首个支持“探测中心拼图3.0”。快速提取、计算雷达衍生产品,如组合反射率CR、回波顶高ET、降水粒子分类HCL等。作为一个开源项目,PyCINRAD对所有用户免费开放,鼓励社区贡献和改进。据悉已遍布CMA的各个系统角落。    

PyCINRAD官网 https://pycinrad.cn

本文介绍如何使用PyCINRAD读取X波段相控阵双偏振雷达基数据

import warnings
import cinrad
import cartopy
from cinrad.visualize import PPI
import numpy as np
import matplotlib.pyplot as plt
import datetime
%matplotlib inline
warnings.filterwarnings("ignore")


basePath = "d:/temp/"
print(cinrad.__version__)
print(np.__version__)
print(cartopy.__version__)
1.9.1
2.0.2
0.23.0

打开基数据

nFiles = basePath + "/cinrad/bz2/Z_RADR_I_ZS409_20231220000000_O_DOR_AXPT0364_CRA_.bz2"
f = cinrad.io.read_auto(nFiles)
print(type(f).__name__)
data = f.get_data(0, 230, "RHO") # 这里我们读取双偏振变量 RHO,即CC
data
StandardData

<xarray.Dataset> Size: 88MB
Dimensions:    (azimuth: 360, distance: 7666)
Coordinates:
  * azimuth    (azimuth) float32 1kB 0.0 0.01745 0.03491 ... 6.231 6.248 6.266
  * distance   (distance) float64 61kB 0.03 0.06 0.09 0.12 ... 229.9 229.9 230.0
Data variables:
    RHO        (azimuth, distance) float64 22MB nan nan nan nan ... nan nan nan
    longitude  (azimuth, distance) float64 22MB 112.0 112.0 ... 112.0 112.0
    latitude   (azimuth, distance) float64 22MB 32.0 32.0 32.0 ... 34.07 34.07
    height     (azimuth, distance) float64 22MB 1.12e+06 1.12e+06 ... 1.12e+06
Attributes:
    elevation:        0.9
    range:            230
    scan_time:        2023-12-20 00:00:00
    site_code:        Z9999
    site_name:        伊宁
    site_longitude:   112.0
    site_latitude:    32.0
    tangential_reso:  0.03
    nyquist_vel:      20.155872
    task:             VCP21D

画图很难吗? 一句代码的事 

fig = cinrad.visualize.PPI(data, style="white") # 画图

# fig("d:/") #把图片保存到d盘

什么都看不到,hhhh,那是因为确实没有回波 

支持格式

PyCINRAD还支持老格式的相控阵数据,文件名如下:

Z_RADR_I_ZBJ02_20210815155836_O_DOR_DXK_CAR.bin

 丰富的接口,看接口名称应该都能看懂吧

cinrad.io.StandardData    
cinrad.io.StandardPUP    
cinrad.io.MocMosaic    
cinrad.io.SWAN(filename,product="CR")    
cinrad.io.CinradReader(filename,radar_type="CC")        
cinrad.io.PhasedArrayData    
cinrad.io.PUP    
cinrad.io.read_auto
#1. 标准格式基数据StandardData

标准格式基数据: 标准格式文件名中有“FMT”、基数据是O_DOR Z_RADR_I_Z9999_20231025220414_O_DOR_SA_CAP_FMT.bin

#2. 标准格式产品StandardPUP

标准格式产品: 标准格式文件名中有“FMT”、产品数据是P_DOR 这里文件名中有HCL,代表是HCL水凝物分类产品 Z_RADR_I_Z9999_20231231160439_P_DOR_SAD_HCL_250_230_5_FMT.bin 下面这种老格式的也是标准格式产品 Z9737_20231126150649Z_CR_00_37

#3. 探测中心天气雷达拼图系统v3产品.MocMosaic

ACHN表示是全网拼图,CREF表示是产品类型是CREF组合反射率 Z_RADA_C_BABJ_20231212010615_P_DOR_ACHN_CREF_20231212_010000

#4. SWAN

以前的老SWAN3产品.MCR表示拼图组合反射率 Z_OTHE_RADAMCR_20220525085400.bin

#5. 老格式的国产基数据.CinradReader

和标准格式的唯一区别是文件名中没有“FMT”(这里指的是大部分新情况) Z_RADR_I_Z9731_20240511070524_O_DOR_SAD_CAP.bin

#6. 相控阵PhasedArrayData

标准格式的相控阵雷达基数据(2023以后). 文件名一般有AXPT,就是纳睿雷达的产品。 Z_RADR_I_ZBJ02_20210815155836_O_DOR_DXK_CAR
Z_RADR_I_ZA601_20240415183600_O_DOR_AXPT0364_CRA_FMT
Z_RADR_I_ZS999_20231220000000_O_DOR_AXPT0364_CRA_.bz2

#7: PUP

NEXRAD Level 3 (NIDS) product files. 已经被淘汰的格式,一言难尽,格式太乱,能用则用吧。

#万能读取read_auto

如果你搞不清楚,那请用cinrad.io.read_auto(your_radar_file)来读取。

 

作者:pysoer

物联沃分享整理
物联沃-IOTWORD物联网 » Python处理X波段相控阵双偏振雷达基数据

发表回复