[PYTHON] Konvertieren Sie die GRIB der Radar-Per-Polarkoordinaten GPV der Meteorological Agency in netCDF (CF / Radial Standard).

TL;DR

Das Konvertierungsprogramm befindet sich auf GitHub. Bitte tun Sie dies auf eigenes Risiko. Informationen zur Konvertierung von Wetterradar-Polarkoordinatendaten mit doppelter Polarisation finden Sie in diesem Artikel.

Einführung

Möglicherweise möchten Sie die Radardaten der Meteorological Agency (JMA) verwenden, um Niederschlagsphänomene zu untersuchen. Normalerweise 1 km Maschenweite GPV mit synthetischer Radarechointensität und [analysierter Niederschlag](https: // www. Sie werden häufig räumliche zweidimensionale Niederschlagsdaten verwenden, die durch die Verarbeitung von Informationen aus mehreren Radargeräten erstellt wurden, z. B. data.jma.go.jp/add/suishin/shiyou/pdf/no11601)). Bei aufwändigen Aufgaben wie der Untersuchung der dreidimensionalen räumlichen Verteilung des Niederschlags wird die Reflexionsintensität jedoch im Polarkoordinatengitter für jeden auf dem Radar zentrierten Höhenwinkel gespeichert Radio-Polarkoordinatendaten. Es ist notwendig, jma.go.jp/add/suishin/shiyou/pdf/no13702) zu behandeln.

Diese Daten werden wie andere Daten der Meteorological Agency im GRIB2-Format gespeichert und zeichnen sich durch die Verwendung der Originalvorlagen von JMA aus, z. B. der Vorlagen 3.50120 und 4.51022 ([Distributionsmaterialspezifikation Nr. 13702]). Siehe https://www.data.jma.go.jp/add/suishin/shiyou/pdf/no13702). Lesen und zeichnen Sie daher so wie es ist mit Zeichensoftware wie NCL und GrADS. Du kannst nicht.

Eine Möglichkeit zum Zeichnen besteht darin, das Beispielprogramm auf der Website zum Herunterladen von Radardaten für Radarkoordinationen der Meteorologischen Agentur NICT zu verwenden. Dieses Beispielprogramm verwendet wgrib2 mit einem Patch und einem Patch, mit denen Sie die JMA-eigene Vorlage unter [wgrib2] lesen können (https://www.cpc.ncep.noaa.gov/products/wesley/wgrib2/). Enthält ein C-Programm, das die konvertierte einfache Binärdatei in orthogonale Koordinaten konvertiert, die auf der Radarstelle zentriert sind, sowie ein GrADS-Skript, das die konvertierten Daten zeichnet.

Andererseits wurden kürzlich Radardaten in Python wie PyART und wradlib Analysewerkzeuge werden immer umfangreicher. Natürlich sollten diese Tools nicht die GRIB ihrer eigenen Vorlage lesen, sondern die Daten in das NetCDF-Format der Konvention CF / Radial konvertieren und lesen. Ich muss dich lassen. Es scheint, dass niemand ein solches Konvertierungsprogramm veröffentlicht hat, also habe ich es erstellt.

Was sind CF / Radial-Begriffe?

Bevor Sie die CF / Radial-Begriffe erläutern, müssen Sie die CF-Begriffe kennen. In Bezug auf die CF-Regeln die Erklärung der Website von Herrn Toyoda (NetCDF CF regelt die japanische Übersetzung) (http://www.gfd-dennou.org/library/netcdf/cf-conventions-ja/cf-ja.html) Ich werde es zitieren, weil es prägnant ist.

NetCDF definiert das Framework des Datenformats (genau wie XML). Sie können dem Datensatz ein Name-Wert-Paar geben, das als Attribut bezeichnet wird. Sie können jedoch alle Informationen entsprechend Ihrer Zustimmung schreiben. Sie müssen daher versprechen, wie es verwendet wird. Dies wird als NetCDF-Konvention bezeichnet. Ich werde. Dies ist eine japanische Übersetzung des CF-Codes, der zum De-facto-Standard im Code wird.

Wie Sie aus dem offiziellen Namen der CF / Radial-Konvention als "CF-konformes netCDF-Format für Momentdaten für RADAR und LIDAR in Radialkoordinaten" ersehen können, wurde die CF-Konvention nicht ausreichend unterstützt, sodass sie in Polarkoordinaten ausgedrückt werden kann. Es ist eine Konvention, die die Beobachtungsdaten verschiedener Radargeräte und Fahrer ausdrückt.

Es gibt zwei Arten von CF / Radial-Konventionen: Version 1.x (CfRadial1) und 2.x (CfRadial2). CfRadial1 basiert auf dem klassischen Datenmodell von NetCDF. Die erste Version 1.1 wurde 2011 formuliert und die neueste Version 1.4 (https://github.com/NCAR/CfRadial/blob/master/docs/CfRadialDoc.v1.4.20160801.pdf) wurde 2016 formuliert. Es wird eine Version sein. Andererseits verwendet CfRadial2 NetCDF4 und group und ist nicht abwärtskompatibel mit CfRadial1. Die aktuellste Version von Version 2.0 wurde 2017 formuliert und wird teilweise 2019 sein. Updates wurden hinzugefügt. Darüber hinaus wird der Entwurf der Phase Version 2.1 im Jahr 2019 veröffentlicht.

Da CfRadial2 kürzlich erstellt wurde, scheint der Support-Status je nach Tool unterschiedlich zu sein. In Bezug auf PyART, [Problem beim Lesen von CF / Radial 2.0-Dateien # 858](https://github.com/ARM-DOE/pyart/issues/ Soweit ich 858 gelesen habe, scheint es in der offiziellen Version einige Probleme mit CfRadial2 zu geben, und es scheint, dass Freiwillige und kompatible Leser erstellt wurden. Für wradlib, soweit Sie [wradlib.io.xarray.CfRadial] sehen können (https://docs.wradlib.org/en/stable/) , CfRadial2 scheint unterstützt zu werden. (Weder wurde tatsächlich bestätigt)

Konverter erstellen

Grundsätzlich müssen Sie nur Spezifikationen für Vertriebsmaterialien Nr. 13702 lesen und den zu konvertierenden Code schreiben. Da diesmal viele Umgebungen verwendet werden können und die Struktur einfach ist, wird sie in [CF / Radial Version 1.4] konvertiert (https://github.com/NCAR/CfRadial/blob/master/docs/CfRadialDoc.v1.4.20160801.pdf). Ich habe mich dazu entschlossen. Ich habe Pythons netCDF4-Paket verwendet, um NetCDF zu erstellen. Hier sind einige Punkte.

Platzieren Sie das erstellte Konvertierungsprogramm unter der MIT-Lizenz auf GitHub.

Zeichnung konvertierter Daten

Wenn Sie mit PyART ein Diagramm der Ausgabedaten zeichnen, sieht es folgendermaßen aus. Es ist praktisch, eine Mindestzahl mit 4 Linien zeichnen zu können.

draw.py


import matplotlib.pyplot as plt
import pyart

radar = pyart.io.read_cfradial('./work/RS47695.nc')
display = pyart.graph.RadarDisplay(radar)
display.plot('DBZ', sweep=29)
plt.show()

RS47695_29.png

Vielen Dank

Recommended Posts

Konvertieren Sie die GRIB der Radar-Per-Polarkoordinaten GPV der Meteorological Agency in netCDF (CF / Radial Standard).
Konvertieren Sie die GRIB der Radar-Per-Polarkoordinaten GPV der Meteorological Agency in netCDF (CF / Radial Standard).
Laden Sie die Winddaten der Meteorological Agency herunter
Lesen Sie die GRIB2-Datei der Meteorological Agency auf pygrib
Laden Sie die Winddaten der Meteorological Agency herunter