气ython风雨 发表于 2024-5-16 11:32:17

雷达系列:两种雷达库计算HCL产品方法对比

前言
在本文中,我们将对比两种Python雷达库,分别是pycwr和pycinrad,它们用于计算HCL(Hydrometeor Classification)产品的方法。通过对它们的功能、性能、易用性等方面进行比较,我们可以更好地了解它们各自的优势和特点。

温馨提示
由于可视化代码过长隐藏,可点击雷达系列:两种雷达库计算HCL产品方法对比运行Fork查看
🔜🔜若没有成功加载可视化图,点击运行可以查看
ps:隐藏代码在【代码已被隐藏】所在行,点击所在行,可以看到该行的最右角,会出现个三角形,点击查看即可

pycinrad
In :
import cinrad
help(cinrad.calc.hydro_class)
Help on function hydro_class in module cinrad.calc:

hydro_class(z: xarray.core.dataset.Dataset, zdr: xarray.core.dataset.Dataset, rho: xarray.core.dataset.Dataset, kdp: xarray.core.dataset.Dataset, band: str = 'S') -> xarray.core.dataset.Dataset
    Hydrometeor classification
   
    Args:
      z (xarray.Dataset): Reflectivity data.
   
      zdr (xarray.Dataset): Differential reflectivity data.
   
      rho (xarray.Dataset): Cross-correlation coefficient data.
   
      kdp (xarray.Dataset): Specific differential phase data.
   
      band (str): Band of the radar, default to S.
   
    Returns:
      xarray.Dataset: Classification result.



pycwr
In :
from pycwr.io import read_auto
from pycwr.retrieve.HID import fhc_HCL
import matplotlib.pyplot as plt
import numpy as np
from pycwr.draw.RadarPlot import plot_xy, add_rings
import pandas as pd
In :help(fhc_HCL)
Help on function fhc_HCL in module pycwr.retrieve.HID:

fhc_HCL(dBZ=None, ZDR=None, KDP=None, CC=None, LDR=None, T=None, method='hybrid', band='C', weights={'dBZ': 1.5, 'ZDR': 0.8, 'KDP': 1.0, 'CC': 0.8, 'LDR': 0, 'T': 0})
    Does FHC for warm-season precip. using beta function for Fuzzy Logic
    HCL types:         Species #:
    -------------------------------
    Drizzle                  1
    Rain                     2
    Ice Crystals             3
    Dry Aggregates Snow      4
    Wet Snow               5
    Vertical Ice             6
    Low-Density Graupel      7
    High-Density Graupel   8
    Hail                     9
    Big Drops                10
    -------------------------------
    cite{Dolan, Brenda , et al. "A Robust C-Band Hydrometeor Identification Algorithm and Application to
   a Long-Term Polarimetric Radar Dataset." Journal of Applied Meteorology and Climatology 52.9(2013):2162-2186.}
    :param weights:
    :param dBZ: Input reflectivity scalar/array
    :param ZDR: Input differential reflectivity scalar/array
    :param KDP: Input specific differential phase scalar/array
    :param CC: Input cross correlation ratio scalar/array
    :param LDR: Input linear depolarization ratio scalar/array
    :param T: Input temperature scalar/array
    :param method: Currently support 'hybrid' or 'linear' methods; hybrid preferred
    :param band: 'X', 'C', or 'S'
    :return: hydrometeor species

/opt/conda/lib/python3.9/site-packages/pycwr/draw/RadarPlot.py:673: UserWarning: The input coordinates to pcolormesh are interpreted as cell centers, but are not monotonically increasing or decreasing. This may lead to incorrectly calculated cell edges, in which case, please supply explicit cell edges to pcolormesh.
gci = ax.pcolormesh(x / 1000., y / 1000., data, cmap=cmaps, \






文章来源于公众号:气python风雨
页: [1]
查看完整版本: 雷达系列:两种雷达库计算HCL产品方法对比