WXBC 2025年度テクノロジー研修(第3回)
「気象庁GPVデータ分析チャレンジ!入門」 Google Colaboratory 設定用 Notebook
Copyright 2025 WXBC 人材育成WG 気象データ×IT勉強会

<利用条件> 本書は、本書に記載した要件・技術・方式に関する内容が変更されないこと、および出典を明示いただくことを前提に、無償でその全部または一部を複製、翻案、翻訳、転記、引用、公衆送信等して利用できます。なお、全体または一部を複製、翻案、翻訳された場合は、本書にある著作権表示および利用条件を明示してください。

<免責事項> 本書の著作権者は、本書の記載内容に関して、その正確性、商品性、利用目的への適合性等に関して保証するものではなく、特許権、著作権、その他の権利を侵害していないことを保証するものでもありません。本書の利用により生じた損害について、本書の著作権者は、法律上のいかなる責任も負いません。


Colabの設定¶

(この準備作業は最初に1回行えば大丈夫です)

1. Googleドライブのマウント¶

 コンピューターが、ディスクにファイルを書き込んだり読み出したりできるようにすることを「マウントする」と言います。以下のCodeCellを実行すると、GoogleドライブをGoogleColaboにマウントします。
実行の過程で、接続に関する確認が求められるので、許可をして進んでください。

In [1]:
from google.colab import drive
drive.mount('/content/drive', force_remount=True)
Mounted at /content/drive

 これで、Colabは、Googleドライブの「マイドライブ」を、ディレクトリ(フォルダ)「/content/drive/MyDrive」として利用できるようになりました。

2. 研修教材の配置¶

 まず、カレントディレクトリ(あなたの指示で仕事をしているこのNotebookが仕事場としているディレクトリ)を MyDrive/WXBC に移しておきます。

In [2]:
%cd /content/drive/MyDrive/WXBC
/content/drive/MyDrive/WXBC

 次に、以下を実行し、WXBCのホームページから研修教材とサンプルデータをダウンロードしてください。サイズが大変大きいので時間がかかります。失敗する場合もありますので、経過の表示はよく見ておいて下さい。

In [3]:
!wget https://www.wxbc.jp/wp-content/uploads/2025/09/challenge3.zip
--2025-09-17 23:34:16--  https://www.wxbc.jp/wp-content/uploads/2025/09/challenge3.zip
Resolving www.wxbc.jp (www.wxbc.jp)... 153.127.91.211
Connecting to www.wxbc.jp (www.wxbc.jp)|153.127.91.211|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 7170160940 (6.7G) [application/zip]
Saving to: ‘challenge3.zip’

challenge3.zip       26%[====>               ]   1.79G  5.20MB/s    in 5m 2s   

2025-09-17 23:39:19 (6.09 MB/s) - Connection closed at byte 1925087193. Retrying.

--2025-09-17 23:39:20--  (try: 2)  https://www.wxbc.jp/wp-content/uploads/2025/09/challenge3.zip
Connecting to www.wxbc.jp (www.wxbc.jp)|153.127.91.211|:443... connected.
HTTP request sent, awaiting response... 206 Partial Content
Length: 7170160940 (6.7G), 5245073747 (4.9G) remaining [application/zip]
Saving to: ‘challenge3.zip’

challenge3.zip       57%[+++++=====>         ]   3.82G  6.67MB/s    in 5m 1s   

2025-09-17 23:44:22 (6.89 MB/s) - Connection closed at byte 4098823478. Retrying.

--2025-09-17 23:44:24--  (try: 3)  https://www.wxbc.jp/wp-content/uploads/2025/09/challenge3.zip
Connecting to www.wxbc.jp (www.wxbc.jp)|153.127.91.211|:443... connected.
HTTP request sent, awaiting response... 206 Partial Content
Length: 7170160940 (6.7G), 3071337462 (2.9G) remaining [application/zip]
Saving to: ‘challenge3.zip’

challenge3.zip       91%[+++++++++++======>  ]   6.10G  13.6MB/s    in 5m 0s   

2025-09-17 23:49:25 (7.78 MB/s) - Connection closed at byte 6546668603. Retrying.

--2025-09-17 23:49:28--  (try: 4)  https://www.wxbc.jp/wp-content/uploads/2025/09/challenge3.zip
Connecting to www.wxbc.jp (www.wxbc.jp)|153.127.91.211|:443... connected.
HTTP request sent, awaiting response... 206 Partial Content
Length: 7170160940 (6.7G), 623492337 (595M) remaining [application/zip]
Saving to: ‘challenge3.zip’

challenge3.zip      100%[++++++++++++++++++=>]   6.68G  8.41MB/s    in 1m 41s  

2025-09-17 23:51:10 (5.90 MB/s) - ‘challenge3.zip’ saved [7170160940/7170160940]

 無事ダウンロードできたら、以下を実行して展開します。

In [4]:
!unzip challenge3.zip
Archive:  challenge3.zip
   creating: challenge3/
   creating: challenge3/jmadata/
   creating: challenge3/jmadata/cps3/
   creating: challenge3/jmadata/cps3/2023/
   creating: challenge3/jmadata/cps3/2023/202305/
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lh2_Ptt_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp100_Phh_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp200_Phh_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp200_Ptt_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp200_Pwu_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp200_Pwv_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp300_Phh_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp500_Phh_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp500_Ptt_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp500_Pwu_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp500_Pwv_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp850_Phh_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp850_Prh_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp850_Ptt_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp850_Pwu_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp850_Pwv_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lsurf_Picec_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lsurf_Ppp_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lsurf_Prr_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202305/Z__C_RJTD_20230531000000_EPSC_MGPV_Rgl_Gll1p25deg_Lsurf_Pss_Emb_grib2.bin  
   creating: challenge3/jmadata/cps3/2023/202306/
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lh2_Ptt_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp100_Phh_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp200_Phh_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp200_Ptt_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp200_Pwu_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp200_Pwv_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp300_Phh_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp500_Phh_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp500_Ptt_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp500_Pwu_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp500_Pwv_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp850_Phh_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp850_Prh_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp850_Ptt_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp850_Pwu_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lp850_Pwv_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lsurf_Picec_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lsurf_Ppp_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lsurf_Prr_Emb_grib2.bin  
  inflating: challenge3/jmadata/cps3/2023/202306/Z__C_RJTD_20230601000000_EPSC_MGPV_Rgl_Gll1p25deg_Lsurf_Pss_Emb_grib2.bin  
   creating: challenge3/jmadata/geps/
   creating: challenge3/jmadata/geps/g1/
   creating: challenge3/jmadata/geps/g1/2023/
   creating: challenge3/jmadata/geps/g1/2023/202305/
  inflating: challenge3/jmadata/geps/g1/2023/202305/Z__C_RJTD_20230531120000_EPSG_GPV_Rjp_Gll0p375deg_L-pall_FD0000-0512_grib2.bin  
  inflating: challenge3/jmadata/geps/g1/2023/202305/Z__C_RJTD_20230531120000_EPSG_GPV_Rjp_Gll0p375deg_L-pall_FD0518-1100_grib2.bin  
  inflating: challenge3/jmadata/geps/g1/2023/202305/Z__C_RJTD_20230531120000_EPSG_GPV_Rjp_Gll0p375deg_Lsurf_FD0000-0512_grib2.bin  
  inflating: challenge3/jmadata/geps/g1/2023/202305/Z__C_RJTD_20230531120000_EPSG_GPV_Rjp_Gll0p375deg_Lsurf_FD0515-1100_grib2.bin  
   creating: challenge3/jmadata/geps/g2/
   creating: challenge3/jmadata/geps/g2/2023/
   creating: challenge3/jmadata/geps/g2/2023/202305/
  inflating: challenge3/jmadata/geps/g2/2023/202305/Z__C_RJTD_20230531120000_EPSG_GPV_Rjp_Gll0p375deg_L-pall_FD1106-1800_grib2.bin  
  inflating: challenge3/jmadata/geps/g2/2023/202305/Z__C_RJTD_20230531120000_EPSG_GPV_Rjp_Gll0p375deg_Lsurf_FD1103-1800_grib2.bin  
   creating: challenge3/jmadata/geps/g3/
   creating: challenge3/jmadata/geps/g3/2023/
   creating: challenge3/jmadata/geps/g3/2023/202305/
  inflating: challenge3/jmadata/geps/g3/2023/202305/Z__C_RJTD_20230530120000_EPSG_GPV_Rjp_Gll0p375deg_L-pall_FD1806-3400_grib2.bin  
  inflating: challenge3/jmadata/geps/g3/2023/202305/Z__C_RJTD_20230530120000_EPSG_GPV_Rjp_Gll0p375deg_Lsurf_FD1803-3400_grib2.bin  
  inflating: challenge3/jmadata/geps/g3/2023/202305/Z__C_RJTD_20230531120000_EPSG_GPV_Rjp_Gll0p375deg_L-pall_FD1806-3400_grib2.bin  
  inflating: challenge3/jmadata/geps/g3/2023/202305/Z__C_RJTD_20230531120000_EPSG_GPV_Rjp_Gll0p375deg_Lsurf_FD1803-3400_grib2.bin  
   creating: challenge3/jmadata/gsm/
   creating: challenge3/jmadata/gsm/2023/
   creating: challenge3/jmadata/gsm/2023/202306/
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_L-pall_FD0000-0100_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_L-pall_FD0103-0200_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_L-pall_FD0203-0300_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_L-pall_FD0303-0400_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_L-pall_FD0403-0500_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_L-pall_FD0503-0512_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_L-pall_FD0518-0700_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_L-pall_FD0706-0900_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_L-pall_FD0906-1100_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_Lsurf_FD0000-0100_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_Lsurf_FD0101-0200_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_Lsurf_FD0201-0300_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_Lsurf_FD0301-0400_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_Lsurf_FD0401-0500_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_Lsurf_FD0501-0512_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_Lsurf_FD0515-0700_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_Lsurf_FD0703-0900_grib2.bin  
  inflating: challenge3/jmadata/gsm/2023/202306/Z__C_RJTD_20230601000000_GSM_GPV_Rjp_Gll0p1deg_Lsurf_FD0903-1100_grib2.bin  
   creating: challenge3/jmadata/lfm/
   creating: challenge3/jmadata/lfm/2023/
   creating: challenge3/jmadata/lfm/2023/202306/
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_L-pall_FH0000_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_L-pall_FH0100_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_L-pall_FH0200_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_L-pall_FH0300_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_L-pall_FH0400_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_L-pall_FH0500_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_L-pall_FH0600_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_L-pall_FH0700_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_L-pall_FH0800_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_L-pall_FH0900_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_L-pall_FH1000_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0000_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0030_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0100_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0130_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0200_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0230_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0300_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0330_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0400_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0430_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0500_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0530_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0600_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0630_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0700_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0730_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0800_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0830_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0900_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH0930_grib2.bin  
  inflating: challenge3/jmadata/lfm/2023/202306/Z__C_RJTD_20230601000000_LFM_GPV_Rjp_Lsurf_FH1000_grib2.bin  
   creating: challenge3/jmadata/meps/
   creating: challenge3/jmadata/meps/2023/
   creating: challenge3/jmadata/meps/2023/202305/
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531060000_MEPS_GPV_Rjp_L-pall_FH00-15_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531060000_MEPS_GPV_Rjp_L-pall_FH18-33_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531060000_MEPS_GPV_Rjp_L-pall_FH36-39_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531060000_MEPS_GPV_Rjp_Lsurf_FH00-15_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531060000_MEPS_GPV_Rjp_Lsurf_FH18-33_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531060000_MEPS_GPV_Rjp_Lsurf_FH36-39_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531120000_MEPS_GPV_Rjp_L-pall_FH00-15_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531120000_MEPS_GPV_Rjp_L-pall_FH18-33_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531120000_MEPS_GPV_Rjp_L-pall_FH36-39_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531120000_MEPS_GPV_Rjp_Lsurf_FH00-15_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531120000_MEPS_GPV_Rjp_Lsurf_FH18-33_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531120000_MEPS_GPV_Rjp_Lsurf_FH36-39_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531180000_MEPS_GPV_Rjp_L-pall_FH00-15_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531180000_MEPS_GPV_Rjp_L-pall_FH18-33_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531180000_MEPS_GPV_Rjp_L-pall_FH36-39_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531180000_MEPS_GPV_Rjp_Lsurf_FH00-15_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531180000_MEPS_GPV_Rjp_Lsurf_FH18-33_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202305/Z__C_RJTD_20230531180000_MEPS_GPV_Rjp_Lsurf_FH36-39_grib2.bin  
   creating: challenge3/jmadata/meps/2023/202306/
  inflating: challenge3/jmadata/meps/2023/202306/Z__C_RJTD_20230601000000_MEPS_GPV_Rjp_L-pall_FH00-15_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202306/Z__C_RJTD_20230601000000_MEPS_GPV_Rjp_L-pall_FH18-33_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202306/Z__C_RJTD_20230601000000_MEPS_GPV_Rjp_L-pall_FH36-39_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202306/Z__C_RJTD_20230601000000_MEPS_GPV_Rjp_Lsurf_FH00-15_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202306/Z__C_RJTD_20230601000000_MEPS_GPV_Rjp_Lsurf_FH18-33_grib2.bin  
  inflating: challenge3/jmadata/meps/2023/202306/Z__C_RJTD_20230601000000_MEPS_GPV_Rjp_Lsurf_FH36-39_grib2.bin  
   creating: challenge3/jmadata/msm/
   creating: challenge3/jmadata/msm/2023/
   creating: challenge3/jmadata/msm/2023/202306/
  inflating: challenge3/jmadata/msm/2023/202306/Z__C_RJTD_20230601000000_MSM_GPV_Rjp_L-pall_FH00-15_grib2.bin  
  inflating: challenge3/jmadata/msm/2023/202306/Z__C_RJTD_20230601000000_MSM_GPV_Rjp_L-pall_FH18-33_grib2.bin  
  inflating: challenge3/jmadata/msm/2023/202306/Z__C_RJTD_20230601000000_MSM_GPV_Rjp_L-pall_FH36-39_grib2.bin  
  inflating: challenge3/jmadata/msm/2023/202306/Z__C_RJTD_20230601000000_MSM_GPV_Rjp_L-pall_FH42-51_grib2.bin  
  inflating: challenge3/jmadata/msm/2023/202306/Z__C_RJTD_20230601000000_MSM_GPV_Rjp_L-pall_FH54-78_grib2.bin  
  inflating: challenge3/jmadata/msm/2023/202306/Z__C_RJTD_20230601000000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin  
  inflating: challenge3/jmadata/msm/2023/202306/Z__C_RJTD_20230601000000_MSM_GPV_Rjp_Lsurf_FH16-33_grib2.bin  
  inflating: challenge3/jmadata/msm/2023/202306/Z__C_RJTD_20230601000000_MSM_GPV_Rjp_Lsurf_FH34-39_grib2.bin  
  inflating: challenge3/jmadata/msm/2023/202306/Z__C_RJTD_20230601000000_MSM_GPV_Rjp_Lsurf_FH40-51_grib2.bin  
  inflating: challenge3/jmadata/msm/2023/202306/Z__C_RJTD_20230601000000_MSM_GPV_Rjp_Lsurf_FH52-78_grib2.bin  
   creating: challenge3/jmadata/obs_gpv/
   creating: challenge3/jmadata/obs_gpv/2023/
   creating: challenge3/jmadata/obs_gpv/2023/202306/
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601000000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306010000_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601000000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306010000_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601000000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306010000_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601010000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306010100_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601010000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306010100_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601010000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306010100_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601020000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306010200_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601020000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306010200_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601020000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306010200_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601030000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306010300_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601030000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306010300_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601030000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306010300_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601040000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306010400_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601040000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306010400_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601040000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306010400_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601050000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306010500_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601050000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306010500_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601050000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306010500_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601060000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306010600_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601060000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306010600_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601060000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306010600_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601070000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306010700_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601070000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306010700_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601070000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306010700_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601080000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306010800_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601080000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306010800_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601080000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306010800_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601090000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306010900_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601090000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306010900_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601090000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306010900_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601100000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306011000_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601100000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306011000_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601100000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306011000_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601110000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306011100_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601110000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306011100_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601110000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306011100_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601120000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306011200_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601120000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306011200_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601120000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306011200_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601130000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306011300_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601130000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306011300_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601130000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306011300_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601140000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306011400_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601140000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306011400_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601140000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306011400_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601150000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306011500_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601150000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306011500_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601150000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306011500_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601160000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306011600_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601160000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306011600_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601160000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306011600_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601170000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306011700_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601170000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306011700_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601170000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306011700_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601180000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306011800_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601180000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306011800_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601180000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306011800_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601190000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306011900_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601190000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306011900_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601190000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306011900_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601200000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306012000_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601200000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306012000_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601200000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306012000_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601210000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306012100_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601210000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306012100_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601210000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306012100_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601220000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306012200_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601220000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306012200_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601220000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306012200_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601230000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306012300_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601230000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306012300_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230601230000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306012300_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602000000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306020000_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602000000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306020000_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602000000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306020000_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602010000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306020100_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602010000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306020100_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602010000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306020100_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602020000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306020200_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602020000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306020200_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602020000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306020200_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602030000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306020300_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602030000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306020300_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602030000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306020300_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602040000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306020400_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602040000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306020400_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602040000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306020400_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602050000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306020500_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602050000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306020500_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602050000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306020500_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602060000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306020600_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602060000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306020600_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602060000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306020600_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602070000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306020700_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602070000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306020700_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602070000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306020700_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602080000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306020800_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602080000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306020800_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602080000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306020800_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602090000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306020900_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602090000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306020900_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602090000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306020900_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602100000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306021000_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602100000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306021000_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602100000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306021000_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602110000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306021100_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602110000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306021100_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602110000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306021100_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602120000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306021200_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602120000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306021200_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602120000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306021200_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602130000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306021300_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602130000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306021300_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602130000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306021300_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602140000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306021400_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602140000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306021400_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602140000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306021400_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602150000_OBS_GPV_Rjp_Ggis1km_Pds60_A202306021500_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602150000_OBS_GPV_Rjp_Ggis1km_Ptt_A202306021500_grib2.bin  
  inflating: challenge3/jmadata/obs_gpv/2023/202306/Z__C_RJTD_20230602150000_OBS_GPV_Rjp_Ggis1km_Pwm_A202306021500_grib2.bin  
   creating: challenge3/jmadata/ra/
   creating: challenge3/jmadata/ra/2023/
   creating: challenge3/jmadata/ra/2023/202306/
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601000000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601003000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601010000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601013000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601020000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601023000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601030000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601033000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601040000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601043000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601050000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601053000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601060000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601063000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601070000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601073000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601080000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601083000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601090000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601093000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601100000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601103000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601110000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601113000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601120000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601123000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601130000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601133000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601140000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601143000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601150000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601153000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601160000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601163000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601170000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601173000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601180000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601183000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601190000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601193000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601200000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601203000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601210000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601213000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601220000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601223000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601230000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230601233000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602000000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602003000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602010000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602013000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602020000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602023000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602030000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602033000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602040000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602043000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602050000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602053000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602060000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602063000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602070000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602073000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602080000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602083000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602090000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602093000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602100000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602103000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602110000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602113000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602120000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602123000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602130000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602133000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602140000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602143000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602150000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602153000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602160000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602163000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602170000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602173000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602180000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602183000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602190000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602193000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602200000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602203000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602210000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602213000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602220000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602223000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602230000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/ra/2023/202306/Z__C_RJTD_20230602233000_SRF_GPV_Ggis1km_Prr60lv_ANAL_grib2.bin  
  inflating: challenge3/jmadata/Readme.txt  
  inflating: challenge3/JMA_GPV_introductory.html  
  inflating: challenge3/JMA_GPV_introductory.ipynb  
  inflating: challenge3/setup_test.html  
  inflating: challenge3/setup_test.ipynb  
  inflating: challenge3/wxbcgribx.py  
In [5]:
!ls -l challenge3/
total 10682
drwx------ 10 root root    4096 Sep 17 00:34 jmadata
-rw-------  1 root root 5255290 Sep 17 08:43 JMA_GPV_introductory.html
-rw-------  1 root root 4906663 Sep 17 08:43 JMA_GPV_introductory.ipynb
-rw-------  1 root root  734643 Sep 17 08:43 setup_test.html
-rw-------  1 root root   15793 Sep 17 08:43 setup_test.ipynb
-rw-------  1 root root   20747 Sep 17 08:43 wxbcgribx.py

 Colabで取得・展開されたデータは、Googleドライブの画面からも確認できますが、結果が反映されるのにすこし時間がかかりますので、慌てないでください。

 ダウンロードしたファイルのサイズは約7GBで、これを展開すると全体では15GB(無料プランの上限)を超過します。このままでは、以降の操作が行えないので、Googleドライブを開いて(既に開いているGoogleドライブに移って)、ファイル challenge3.zip を消去し、さらに、「ゴミ箱を空にする」操作を行ってください。

3. wgrib2のインストール¶

 今回インストールするのはバージョン3.7.0です。wgrib2は、バージョン3.6からインストール方法が大幅に変更になり、コンパイルにCmakeを使用するようになりました。ですので、過去に経験のある方も、侮らずに以下をよく読んで作業を進めてください。

3.1 開発ツールの確認¶

wgrib2は、ソースコードをコンパイルすることで作成しますが、コンパイル時のオプションにより、ファイルダンプや補間、画像化、並列処理など様々な機能の有無を設定することができます。そして、設定する機能によっては、そのためのツール(ライブラリ)が必要となることもあります。
この研修において、wigrib2はPythonライブラリwxbcgribxを介して利用されますが、そこで求められる範囲の機能を具備させるためには、NetCDFファイルの入出力を可能にするライブラリー libnetcdf-dev が必要になります。これはaptでインストールすることができます。 確認したところ、Colabにはインストール済みでした。よって、インストール作業は不要であり、wgrib2本体をコンパイルすれば大丈夫です。
参考までに、Colabの仮想マシンにこれが存在しているかどうかは、以下を実行して確認します。

  • !apt list --installed | grep libnetcdf-dev

 このコンパイルでは、結果として、ツールを何も追加する必要はありませんが、具備させる機能によっては、aptによるインストールや、さらには、今取り組んでいるようなコンパイル作業をツールの準備として実施する必要が生じることもあります。

3.2 wgrib2のコンパイル¶

コンパイルを実行する前に、ホームディレクトリを示す文字列を用意しておきましょう。Colabのホームディレクトリは /root なので以下とします。

In [6]:
HOME = '/root'

 では、早速始めましょう。

In [7]:
# ホームディレクトリに移動します。
%cd $HOME
/root
In [ ]:
# このコマンドは、何らかの理由から存在してしまっているものを抹殺するときに使用してください
#!rm -rf $HOME/wgrib2
In [8]:
# wgrib2を取得します
!git clone "https://github.com/NOAA-EMC/wgrib2"
Cloning into 'wgrib2'...
remote: Enumerating objects: 7782, done.
remote: Counting objects: 100% (869/869), done.
remote: Compressing objects: 100% (226/226), done.
remote: Total 7782 (delta 734), reused 653 (delta 640), pack-reused 6913 (from 2)
Receiving objects: 100% (7782/7782), 137.71 MiB | 29.93 MiB/s, done.
Resolving deltas: 100% (4668/4668), done.
Updating files: 100% (1340/1340), done.
In [9]:
# ソースコードが格納されたディレクトリwgrib2がつくられるのでそこに移動します
%cd wgrib2
/root/wgrib2

必ず実行してください!

 ここで、画面左端にあるフォルダの形をしたアイコンをクリックしてリストを表示させ、ファイル /root/wgrib2/CMakeLists.txt を見つけてください。
見つけられたらそれをダブルクリックして開き、20行目を以下のように修正します(off→on)。

option(USE_NETCDF "Use NetCDF" on)

変更したら保存(Ctrl+S)して閉じてください。

In [10]:
# ディレクトリwgrib2の中に、さらにディレクトリbuildを新規作成し、そこに移動します。
!mkdir build
%cd build
/root/wgrib2/build
In [11]:
# Cmakeをし、続いてmakeします。
!cmake .. -DCMAKE_BUILD_TYPE=Release
!make
-- The C compiler identification is GNU 11.4.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Finding test data files in directory ..
-- Checking if the user want to use NCEPLIBS-ip...
-- Checking if the user want to use NetCDF...
-- Found NetCDF: /usr/include (found version "4.8.1") found components: C
-- FindNetCDF defines targets:
--   - NetCDF_VERSION [4.8.1]
--   - NetCDF_PARALLEL [FALSE]
--   - NetCDF_HAS_HDF5 [TRUE]
--   - NetCDF_C_CONFIG_EXECUTABLE [/usr/bin/nc-config]
--   - NetCDF::NetCDF_C [SHARED] [Root: /usr] Lib: /usr/lib/x86_64-linux-gnu/libnetcdf.so 
-- Checking if the user want to use OpenMP...
-- Checking if the user wants to use AEC...
-- Writing config.h...
-- Adding wgrib2, aux_probs subdirectories...
-- Setting wgrib2 compiler flags...
-- Adding wgrib2 library build...
-- Copying test file gdaswave.t00z.wcoast.0p16.f000.grib2
-- Copying test file ref_gdaswave.t00z.wcoast.0p16.f000.grib2.inv
-- Copying test file ref_npts_gdaswave.t00z.wcoast.0p16.f000.grib2.txt
-- Copying test file ref_simple_packing.grib2
-- Copying test file gdas.t12z.pgrb2.1p00.anl.75r.grib2
-- Copying test file ref_wind.gdas.t12z.pgrb2.1p00.anl.75r.grib2.inv
-- Copying test file ref_uv.gdas.t12z.pgrb2.1p00.anl.75r.grib2.inv
-- Copying test file ref_grid.gdaswave.t00z.wcoast.0p16.f000.grib2.txt
-- Copying test file ref_celsius.gdas.t12z.pgrb2.1p00.anl.75r.grib2.txt
-- Copying test file ref_fahrenheit.gdas.t12z.pgrb2.1p00.anl.75r.grib2.txt
-- Copying test file ref_rh.gdas.t12z.pgrb2.1p00.anl.75r.grib2.txt
-- Copying test file ref_tmp_windspeed.txt
-- Copying test file ref_rpn.windspeed.gdas.t12z.pgrb2.1p00.anl.75r.grib2.txt
-- Copying test file ref_sec0.gdas.t12z.pgrb2.1p00.anl.75r.grib2
-- Copying test file ref_sec0.gdas.t12z.pgrb2.1p00.anl.75r.grib2.txt
-- Copying test file ref_sec_len.gdaswave.t00z.wcoast.0p16.f000.grib2.txt
-- Copying test file ref_sec_len.simple_packing.grib2.txt
-- Copying test file ref_simple_packing.grib2.spread.txt
-- Copying test file ref_new_grid_gdt_32769.grib2
-- Copying test file png_4bits.png
-- Copying test file large_png.grb2
-- Copying test file ref_c3_overflow.grib2
-- Copying test file ref_ncdump4.gdas.t12z.pgrb2.1p00.anl.75r.grib2.txt
-- Copying test file ref_tablenc.gdas.t12z.pgrb2.1p00.anl.75r.grib2.txt
-- Copying test file nctab.table
-- Copying test file ref_ecmwf.jul.grb1
-- Copying test file ref_ecmwf.jul.grb1.inv
-- Copying test file ref_jpeg2simple.txt
-- Copying test file LARGECAT220250305_12_1443copy.grib2
-- Copying test file ref_LARGECAT220250305_12_1443copy_stats.txt
-- Configuring done (1.0s)
-- Generating done (0.2s)
-- Build files have been written to: /root/wgrib2/build
[  0%] Building C object wgrib2/CMakeFiles/obj_lib.dir/AAIG.c.o
[  0%] Building C object wgrib2/CMakeFiles/obj_lib.dir/AAIGlong.c.o
[  1%] Building C object wgrib2/CMakeFiles/obj_lib.dir/addtime.c.o
[  1%] Building C object wgrib2/CMakeFiles/obj_lib.dir/aec_pk.c.o
[  1%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Aerosol.c.o
[  1%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Alarm.c.o
[  1%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Alias.c.o
[  2%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Ave_test.c.o
[  2%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Ave_var.c.o
[  2%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Bbox.c.o
[  2%] Building C object wgrib2/CMakeFiles/obj_lib.dir/bitstream.c.o
[  2%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Box_ave.c.o
[  3%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Check_pdt_size.c.o
[  3%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Checksum.c.o
[  3%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Cluster.c.o
[  3%] Building C object wgrib2/CMakeFiles/obj_lib.dir/cname.c.o
[  3%] Building C object wgrib2/CMakeFiles/obj_lib.dir/codetable_4_230.c.o
[  3%] Building C object wgrib2/CMakeFiles/obj_lib.dir/CodeTable.c.o
[  4%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Code_Values.c.o
[  4%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Code_Values_JMA.c.o
[  4%] Building C object wgrib2/CMakeFiles/obj_lib.dir/complex_pk.c.o
[  4%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Config.c.o
[  4%] Building C object wgrib2/CMakeFiles/obj_lib.dir/copy.c.o
[  5%] Building C object wgrib2/CMakeFiles/obj_lib.dir/crc32.c.o
[  5%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Cress_lola.c.o
[  5%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Csv.c.o
[  5%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Csv_long.c.o
[  5%] Building C object wgrib2/CMakeFiles/obj_lib.dir/cubed_sphere2ll.c.o
[  6%] Building C object wgrib2/CMakeFiles/obj_lib.dir/CubeFace2global.c.o
[  6%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Cyclic.c.o
[  6%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Data.c.o
[  6%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Dump.c.o
[  6%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Earth.c.o
[  7%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Else.c.o
[  7%] Building C object wgrib2/CMakeFiles/obj_lib.dir/End.c.o
[  7%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Endif.c.o
[  7%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Ensemble.c.o
[  7%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Ens_processing.c.o
/root/wgrib2/wgrib2/Ens_processing.c: In function ‘wrt_ens_proc.isra’:
/root/wgrib2/wgrib2/Ens_processing.c:563:35: warning: writing 1 byte into a region of size 0 []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-overflow=-Wstringop-overflow=]8;;]
  563 |         table_4_9_probability[-2] = 1;
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/root/wgrib2/wgrib2/Ens_processing.c:347:33: note: at offset -2 into destination object of size [0, 9223372036854775807] allocated by ‘code_table_4_9_location’
  347 |         table_4_9_probability = code_table_4_9_location(new_sec_probability);
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/wgrib2/wgrib2/Ens_processing.c:564:35: warning: writing 1 byte into a region of size 0 []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-overflow=-Wstringop-overflow=]8;;]
  564 |         table_4_9_probability[-1] = 2;
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/root/wgrib2/wgrib2/Ens_processing.c:347:33: note: at offset -1 into destination object of size [0, 9223372036854775807] allocated by ‘code_table_4_9_location’
  347 |         table_4_9_probability = code_table_4_9_location(new_sec_probability);
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/wgrib2/wgrib2/Ens_processing.c:574:35: warning: writing 1 byte into a region of size 0 []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-overflow=-Wstringop-overflow=]8;;]
  574 |         table_4_9_probability[-2] = 2;
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/root/wgrib2/wgrib2/Ens_processing.c:347:33: note: at offset -2 into destination object of size [0, 9223372036854775807] allocated by ‘code_table_4_9_location’
  347 |         table_4_9_probability = code_table_4_9_location(new_sec_probability);
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/wgrib2/wgrib2/Ens_processing.c:575:35: warning: writing 1 byte into a region of size 0 []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-overflow=-Wstringop-overflow=]8;;]
  575 |         table_4_9_probability[-1] = 2;
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/root/wgrib2/wgrib2/Ens_processing.c:347:33: note: at offset -1 into destination object of size [0, 9223372036854775807] allocated by ‘code_table_4_9_location’
  347 |         table_4_9_probability = code_table_4_9_location(new_sec_probability);
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/wgrib2/wgrib2/Ens_processing.c:551:35: warning: writing 1 byte into a region of size 0 []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-overflow=-Wstringop-overflow=]8;;]
  551 |         table_4_9_probability[-2] = 1;
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/root/wgrib2/wgrib2/Ens_processing.c:347:33: note: at offset -2 into destination object of size [0, 9223372036854775807] allocated by ‘code_table_4_9_location’
  347 |         table_4_9_probability = code_table_4_9_location(new_sec_probability);
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/wgrib2/wgrib2/Ens_processing.c:552:35: warning: writing 1 byte into a region of size 0 []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-overflow=-Wstringop-overflow=]8;;]
  552 |         table_4_9_probability[-1] = 1;
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/root/wgrib2/wgrib2/Ens_processing.c:347:33: note: at offset -1 into destination object of size [0, 9223372036854775807] allocated by ‘code_table_4_9_location’
  347 |         table_4_9_probability = code_table_4_9_location(new_sec_probability);
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[  7%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Ens_qc.c.o
[  8%] Building C object wgrib2/CMakeFiles/obj_lib.dir/EOF.c.o
[  8%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Export_lonlat.c.o
[  8%] Building C object wgrib2/CMakeFiles/obj_lib.dir/ExtName.c.o
[  8%] Building C object wgrib2/CMakeFiles/obj_lib.dir/fatal_error.c.o
[  8%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Fcst_ave.c.o
[  9%] Building C object wgrib2/CMakeFiles/obj_lib.dir/ffopen.c.o
[  9%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Fi.c.o
[  9%] Building C object wgrib2/CMakeFiles/obj_lib.dir/File.c.o
[  9%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Fix_CFSv2_fcst.c.o
[  9%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Fix_ncep_2.c.o
[ 10%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Fix_ncep_3.c.o
[ 10%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Fix_ncep_4.c.o
[ 10%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Fix_ncep.c.o
[ 10%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Fix_undef.c.o
[ 10%] Building C object wgrib2/CMakeFiles/obj_lib.dir/FlagTable.c.o
[ 11%] Building C object wgrib2/CMakeFiles/obj_lib.dir/flt2ieee.c.o
[ 11%] Building C object wgrib2/CMakeFiles/obj_lib.dir/flt2ieee_nan.c.o
[ 11%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Flush.c.o
[ 11%] Building C object wgrib2/CMakeFiles/obj_lib.dir/fnlist.c.o
[ 11%] Building C object wgrib2/CMakeFiles/obj_lib.dir/For.c.o
[ 12%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Ftime1.c.o
[ 12%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Ftime2.c.o
[ 12%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Ftime.c.o
[ 12%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Ftn_api.c.o
[ 12%] Building C object wgrib2/CMakeFiles/obj_lib.dir/gaussian2ij.c.o
[ 12%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Gctpc.c.o
[ 13%] Building C object wgrib2/CMakeFiles/obj_lib.dir/gctpc_ll2xy.c.o
[ 13%] Building C object wgrib2/CMakeFiles/obj_lib.dir/GDT.c.o
[ 13%] Building C object wgrib2/CMakeFiles/obj_lib.dir/geo.c.o
[ 13%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Geolocation.c.o
[ 13%] Building C object wgrib2/CMakeFiles/obj_lib.dir/get_unixtime.c.o
[ 14%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Grads.c.o
[ 14%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Grib.c.o
[ 14%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Grib_out_irr2.c.o
[ 14%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Grib_out_irr.c.o
[ 14%] Building C object wgrib2/CMakeFiles/obj_lib.dir/gribtab.c.o
[ 15%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Gribtable_used.c.o
[ 15%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Grid_def.c.o
[ 15%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Grid_id.c.o
[ 15%] Building C object wgrib2/CMakeFiles/obj_lib.dir/grid_ident.c.o
[ 15%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Gridout.c.o
[ 16%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Help.c.o
[ 16%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Hybrid.c.o
[ 16%] Building C object wgrib2/CMakeFiles/obj_lib.dir/ieee2flt.c.o
[ 16%] Building C object wgrib2/CMakeFiles/obj_lib.dir/ieee2flt_nan.c.o
[ 16%] Building C object wgrib2/CMakeFiles/obj_lib.dir/ieee_pk.c.o
[ 16%] Building C object wgrib2/CMakeFiles/obj_lib.dir/If_delayed_error.c.o
[ 17%] Building C object wgrib2/CMakeFiles/obj_lib.dir/If_rec.c.o
[ 17%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Import.c.o
[ 17%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Import_grib.c.o
[ 17%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Import_grib_fs.c.o
[ 17%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Import_lonlat.c.o
[ 18%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Import_netcdf.c.o
[ 18%] Building C object wgrib2/CMakeFiles/obj_lib.dir/init.c.o
[ 18%] Building C object wgrib2/CMakeFiles/obj_lib.dir/int8.c.o
[ 18%] Building C object wgrib2/CMakeFiles/obj_lib.dir/intpower.c.o
[ 18%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Inv.c.o
[ 19%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Inv_no.c.o
[ 19%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Irr_grids.c.o
[ 19%] Building C object wgrib2/CMakeFiles/obj_lib.dir/itoshort_a.c.o
[ 19%] Building C object wgrib2/CMakeFiles/obj_lib.dir/JMA.c.o
[ 19%] Building C object wgrib2/CMakeFiles/obj_lib.dir/jpeg_pk.c.o
[ 20%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Last.c.o
[ 20%] Building C object wgrib2/CMakeFiles/obj_lib.dir/lat2ij.c.o
[ 20%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Latlon.c.o
[ 20%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Level.c.o
[ 20%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Limit.c.o
[ 20%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Lola.c.o
[ 21%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Lvl.c.o
[ 21%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Macro.c.o
[ 21%] Building C object wgrib2/CMakeFiles/obj_lib.dir/manage_inv_out.c.o
[ 21%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Match.c.o
[ 21%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Match_fs.c.o
[ 22%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Match_inv.c.o
[ 22%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Mem_buffer.c.o
[ 22%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Merge.c.o
[ 22%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Misc.c.o
[ 22%] Building C object wgrib2/CMakeFiles/obj_lib.dir/missing.c.o
[ 23%] Building C object wgrib2/CMakeFiles/obj_lib.dir/mk_gdt.c.o
[ 23%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Model_version_date.c.o
[ 23%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Mod_grib.c.o
[ 23%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Names.c.o
[ 23%] Building C object wgrib2/CMakeFiles/obj_lib.dir/ncep_grids.c.o
[ 24%] Building C object wgrib2/CMakeFiles/obj_lib.dir/NCEP_norm.c.o
[ 24%] Building C object wgrib2/CMakeFiles/obj_lib.dir/NCEP_uv.c.o
[ 24%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Ncpu.c.o
[ 24%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Ndate.c.o
[ 24%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Ndates.c.o
[ 24%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Netcdf.c.o
[ 25%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Netcdf_sup.c.o
[ 25%] Building C object wgrib2/CMakeFiles/obj_lib.dir/New_grid.c.o
/root/wgrib2/wgrib2/New_grid.c:58:20: warning: ‘UV_vectors’ defined but not used []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-variable-Wunused-variable]8;;]
   58 | static const char *UV_vectors[] = { "UGRD", "VGRD", NULL };
      |                    ^~~~~~~~~~
/root/wgrib2/wgrib2/New_grid.c:55:20: warning: ‘no_vectors’ defined but not used []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-variable-Wunused-variable]8;;]
   55 | static const char *no_vectors[] = { NULL };
      |                    ^~~~~~~~~~
[ 25%] Building C object wgrib2/CMakeFiles/obj_lib.dir/new_grid_lambertc.c.o
[ 25%] Building C object wgrib2/CMakeFiles/obj_lib.dir/New_grid_order.c.o
[ 25%] Building C object wgrib2/CMakeFiles/obj_lib.dir/openmp_util.c.o
[ 26%] Building C object wgrib2/CMakeFiles/obj_lib.dir/parse_loop.c.o
[ 26%] Building C object wgrib2/CMakeFiles/obj_lib.dir/parse_msg.c.o
[ 26%] Building C object wgrib2/CMakeFiles/obj_lib.dir/pdt_len.c.o
[ 26%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Precision.c.o
[ 26%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Prob.c.o
[ 27%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Proj4.c.o
[ 27%] Building C object wgrib2/CMakeFiles/obj_lib.dir/proj4_initialize.c.o
[ 27%] Building C object wgrib2/CMakeFiles/obj_lib.dir/proj4_transform.c.o
[ 27%] Building C object wgrib2/CMakeFiles/obj_lib.dir/PyInv.c.o
[ 27%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Range.c.o
[ 28%] Building C object wgrib2/CMakeFiles/obj_lib.dir/rdieee_file.c.o
[ 28%] Building C object wgrib2/CMakeFiles/obj_lib.dir/rd_inventory.c.o
[ 28%] Building C object wgrib2/CMakeFiles/obj_lib.dir/rd_seq_grib.c.o
[ 28%] Building C object wgrib2/CMakeFiles/obj_lib.dir/read_latlon.c.o
[ 28%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Reduced_gaussian_grid.c.o
[ 28%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Reset_delayed_error.c.o
[ 29%] Building C object wgrib2/CMakeFiles/obj_lib.dir/rotll.c.o
[ 29%] Building C object wgrib2/CMakeFiles/obj_lib.dir/RPN.c.o
[ 29%] Building C object wgrib2/CMakeFiles/obj_lib.dir/save_string.c.o
[ 29%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Scaling_0001.c.o
[ 29%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Scan.c.o
[ 30%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Sec0.c.o
[ 30%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Sec1.c.o
[ 30%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Sec3.c.o
/root/wgrib2/wgrib2/Sec3.c: In function ‘f_grid’:
/root/wgrib2/wgrib2/Sec3.c:989:13: warning: this ‘else’ clause does not guard... []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wmisleading-indentation-Wmisleading-indentation]8;;]
  989 |             else
      |             ^~~~
/root/wgrib2/wgrib2/Sec3.c:993:17: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
  993 |                 break;
      |                 ^~~~~
[ 30%] Building C object wgrib2/CMakeFiles/obj_lib.dir/sec3_grids.c.o
[ 30%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Sec4.c.o
[ 31%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Sec5.c.o
[ 31%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Sec6.c.o
[ 31%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Sec_len.c.o
[ 31%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Set_byte.c.o
[ 31%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Set_date.c.o
[ 32%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Set_ensm_derived_fcst.c.o
[ 32%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Set_ens_num.c.o
[ 32%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Set_ftime1.c.o
[ 32%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Set_ftime2.c.o
[ 32%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Set_ftime_mode.c.o
[ 32%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Set_gds.c.o
/root/wgrib2/wgrib2/Set_gds.c: In function ‘f_set_gds’:
/root/wgrib2/wgrib2/Set_gds.c:47:17: warning: writing 1 byte into a region of size 0 []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-overflow=-Wstringop-overflow=]8;;]
   47 |     new_sec3[4] = 3;
      |     ~~~~~~~~~~~~^~~
/root/wgrib2/wgrib2/Set_gds.c:41:34: note: at offset 4 into destination object of size [0, 4] allocated by ‘malloc’
   41 |     new_sec3 = (unsigned char *) malloc(sizeof(unsigned char) * (size_t) size_new_sec3);
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 33%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Set_metadata.c.o
[ 33%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Set_pdt.c.o
[ 33%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Set_percentile.c.o
[ 33%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Set_prob.c.o
[ 33%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Set_sec_size.c.o
[ 34%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Set_ts_dates.c.o
[ 34%] Building C object wgrib2/CMakeFiles/obj_lib.dir/setup_user_gribtable.c.o
[ 34%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Set_val.c.o
[ 34%] Building C object wgrib2/CMakeFiles/obj_lib.dir/simple_pk.c.o
[ 34%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Small_grib.c.o
[ 35%] Building C object wgrib2/CMakeFiles/obj_lib.dir/space_view2ij.c.o
/root/wgrib2/wgrib2/space_view2ij.c:56:16: warning: ‘lon’ defined but not used []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-variable-Wunused-variable]8;;]
   56 | static double *lon;
      |                ^~~
[ 35%] Building C object wgrib2/CMakeFiles/obj_lib.dir/space_view.c.o
[ 35%] Building C object wgrib2/CMakeFiles/obj_lib.dir/SpatialProcessing.c.o
[ 35%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Spectral_bands.c.o
/root/wgrib2/wgrib2/Spectral_bands.c: In function ‘f_spectral_bands_extname’:
/root/wgrib2/wgrib2/Spectral_bands.c:38:26: warning: variable ‘longname’ set but not used []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-but-set-variable-Wunused-but-set-variable]8;;]
   38 |     const char *agency, *longname;    /* unused, but set in include files */
      |                          ^~~~~~~~
/root/wgrib2/wgrib2/Spectral_bands.c:38:17: warning: variable ‘agency’ set but not used []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-but-set-variable-Wunused-but-set-variable]8;;]
   38 |     const char *agency, *longname;    /* unused, but set in include files */
      |                 ^~~~~~
[ 35%] Building C object wgrib2/CMakeFiles/obj_lib.dir/stagger.c.o
[ 36%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Status.c.o
[ 36%] Building C object wgrib2/CMakeFiles/obj_lib.dir/string2time_unit.c.o
[ 36%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Submsg_uv.c.o
[ 36%] Building C object wgrib2/CMakeFiles/obj_lib.dir/subtime.c.o
[ 36%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Summary.c.o
[ 37%] Building C object wgrib2/CMakeFiles/obj_lib.dir/swap_buffer.c.o
[ 37%] Building C object wgrib2/CMakeFiles/obj_lib.dir/test_sec.c.o
[ 37%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Tigge.c.o
[ 37%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Time_processing.c.o
[ 37%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Timer.c.o
[ 37%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Tosubmsg.c.o
[ 38%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Type_reftime.c.o
[ 38%] Building C object wgrib2/CMakeFiles/obj_lib.dir/UDF.c.o
[ 38%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Undefine.c.o
[ 38%] Building C object wgrib2/CMakeFiles/obj_lib.dir/units.c.o
[ 38%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Unix_time.c.o
[ 39%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Unmerge_fcst.c.o
[ 39%] Building C object wgrib2/CMakeFiles/obj_lib.dir/unpk_0.c.o
[ 39%] Building C object wgrib2/CMakeFiles/obj_lib.dir/unpk.c.o
[ 39%] Building C object wgrib2/CMakeFiles/obj_lib.dir/unpk_complex.c.o
[ 39%] Building C object wgrib2/CMakeFiles/obj_lib.dir/unpk_run_length.c.o
[ 40%] Building C object wgrib2/CMakeFiles/obj_lib.dir/update_sec3.c.o
[ 40%] Building C object wgrib2/CMakeFiles/obj_lib.dir/update_sec4.c.o
[ 40%] Building C object wgrib2/CMakeFiles/obj_lib.dir/v1_v2_if.c.o
[ 40%] Building C object wgrib2/CMakeFiles/obj_lib.dir/VerfTime.c.o
[ 40%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Warn_old_g2lib.c.o
[ 41%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Waves.c.o
[ 41%] Building C object wgrib2/CMakeFiles/obj_lib.dir/wgrib2_api.c.o
[ 41%] Building C object wgrib2/CMakeFiles/obj_lib.dir/wgrib2.c.o
[ 41%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Wind_dir.c.o
[ 41%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Wind_speed.c.o
[ 41%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Wind_uv.c.o
[ 42%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Write_sec.c.o
[ 42%] Building C object wgrib2/CMakeFiles/obj_lib.dir/Wrt_grib.c.o
[ 42%] Building C object wgrib2/CMakeFiles/obj_lib.dir/wrtieee.c.o
[ 42%] Building C object wgrib2/CMakeFiles/obj_lib.dir/wxtext.c.o
[ 42%] Built target obj_lib
[ 42%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/alberfor.c.o
[ 42%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/alberinv.c.o
[ 42%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/alconfor.c.o
[ 42%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/alconinv.c.o
[ 42%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/azimfor.c.o
[ 43%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/aziminv.c.o
[ 43%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/cproj.c.o
[ 43%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/eqconfor.c.o
[ 43%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/eqconinv.c.o
[ 43%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/equifor.c.o
[ 44%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/equiinv.c.o
[ 44%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/for_init.c.o
[ 44%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/gctp.c.o
[ 44%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/gnomfor.c.o
[ 44%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/gnominv.c.o
[ 45%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/goodfor.c.o
[ 45%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/goodinv.c.o
[ 45%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/gvnspfor.c.o
[ 45%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/gvnspinv.c.o
[ 45%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/hamfor.c.o
[ 46%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/haminv.c.o
[ 46%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/imolwfor.c.o
[ 46%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/imolwinv.c.o
[ 46%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/inv_init.c.o
[ 46%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/lamazfor.c.o
[ 46%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/lamazinv.c.o
[ 47%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/lamccfor.c.o
[ 47%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/lamccinv.c.o
[ 47%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/merfor.c.o
[ 47%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/merinv.c.o
[ 47%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/millfor.c.o
[ 48%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/millinv.c.o
[ 48%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/molwfor.c.o
[ 48%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/molwinv.c.o
[ 48%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/obleqfor.c.o
[ 48%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/obleqinv.c.o
[ 49%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/omerfor.c.o
/root/wgrib2/wgrib2/gctpc/source/omerfor.c: In function ‘omerforint’:
/root/wgrib2/wgrib2/gctpc/source/omerfor.c:148:16: warning: ‘f’ may be used uninitialized in this function []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wmaybe-uninitialized-Wmaybe-uninitialized]8;;]
  148 |    g = .5 * (f - 1.0/f);
      |             ~~~^~~~~~~~
[ 49%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/omerinv.c.o
/root/wgrib2/wgrib2/gctpc/source/omerinv.c: In function ‘omerinvint’:
/root/wgrib2/wgrib2/gctpc/source/omerinv.c:148:16: warning: ‘f’ may be used uninitialized in this function []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wmaybe-uninitialized-Wmaybe-uninitialized]8;;]
  148 |    g = .5 * (f - 1.0/f);
      |             ~~~^~~~~~~~
[ 49%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/orthfor.c.o
[ 49%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/orthinv.c.o
[ 49%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/paksz.c.o
[ 50%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/polyfor.c.o
[ 50%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/polyinv.c.o
[ 50%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/psfor.c.o
[ 50%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/psinv.c.o
[ 50%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/report.c.o
[ 50%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/robfor.c.o
[ 51%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/robinv.c.o
[ 51%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/sinfor.c.o
[ 51%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/sininv.c.o
[ 51%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/somfor.c.o
[ 51%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/sominv.c.o
[ 52%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/sphdz.c.o
[ 52%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/sterfor.c.o
[ 52%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/sterinv.c.o
[ 52%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/stplnfor.c.o
/root/wgrib2/wgrib2/gctpc/source/stplnfor.c: In function ‘stplnforint’:
/root/wgrib2/wgrib2/gctpc/source/stplnfor.c:154:1: warning: ignoring return value of ‘fread’ declared with attribute ‘warn_unused_result’ []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
  154 | fread(pname,1,32,ptr);
      | ^~~~~~~~~~~~~~~~~~~~~
/root/wgrib2/wgrib2/gctpc/source/stplnfor.c:155:1: warning: ignoring return value of ‘fread’ declared with attribute ‘warn_unused_result’ []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
  155 | fread(&id,sizeof(long),1,ptr);
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/wgrib2/wgrib2/gctpc/source/stplnfor.c:156:1: warning: ignoring return value of ‘fread’ declared with attribute ‘warn_unused_result’ []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
  156 | fread(table,sizeof(double),9,ptr);
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 52%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/stplninv.c.o
/root/wgrib2/wgrib2/gctpc/source/stplninv.c: In function ‘stplninvint’:
/root/wgrib2/wgrib2/gctpc/source/stplninv.c:154:1: warning: ignoring return value of ‘fread’ declared with attribute ‘warn_unused_result’ []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
  154 | fread(pname,sizeof(char),32,ptr);
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/wgrib2/wgrib2/gctpc/source/stplninv.c:155:1: warning: ignoring return value of ‘fread’ declared with attribute ‘warn_unused_result’ []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
  155 | fread(&id,sizeof(long),1,ptr);
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/wgrib2/wgrib2/gctpc/source/stplninv.c:156:1: warning: ignoring return value of ‘fread’ declared with attribute ‘warn_unused_result’ []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
  156 | fread(table,sizeof(double),9,ptr);
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 53%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/tmfor.c.o
[ 53%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/tminv.c.o
[ 53%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/untfz.c.o
[ 53%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/utmfor.c.o
[ 53%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/utminv.c.o
[ 54%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/vandgfor.c.o
[ 54%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/vandginv.c.o
[ 54%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/wivfor.c.o
[ 54%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/wivinv.c.o
[ 54%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/wviifor.c.o
[ 54%] Building C object wgrib2/gctpc/source/CMakeFiles/gctpc.dir/wviiinv.c.o
[ 54%] Built target gctpc
[ 54%] Building C object wgrib2/CMakeFiles/wgrib2_exe.dir/wgrib2_main.c.o
[ 54%] Linking C executable wgrib2
[ 54%] Built target wgrib2_exe
[ 54%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/AAIG.c.o
[ 55%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/AAIGlong.c.o
[ 55%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/addtime.c.o
[ 55%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/aec_pk.c.o
[ 55%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Aerosol.c.o
[ 55%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Alarm.c.o
[ 55%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Alias.c.o
[ 56%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Ave_test.c.o
[ 56%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Ave_var.c.o
[ 56%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Bbox.c.o
[ 56%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/bitstream.c.o
[ 56%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Box_ave.c.o
[ 57%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Check_pdt_size.c.o
[ 57%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Checksum.c.o
[ 57%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Cluster.c.o
[ 57%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/cname.c.o
[ 57%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/codetable_4_230.c.o
[ 58%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/CodeTable.c.o
[ 58%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Code_Values.c.o
[ 58%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Code_Values_JMA.c.o
[ 58%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/complex_pk.c.o
[ 58%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Config.c.o
[ 59%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/copy.c.o
[ 59%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/crc32.c.o
[ 59%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Cress_lola.c.o
[ 59%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Csv.c.o
[ 59%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Csv_long.c.o
[ 59%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/cubed_sphere2ll.c.o
[ 60%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/CubeFace2global.c.o
[ 60%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Cyclic.c.o
[ 60%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Data.c.o
[ 60%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Dump.c.o
[ 60%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Earth.c.o
[ 61%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Else.c.o
[ 61%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/End.c.o
[ 61%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Endif.c.o
[ 61%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Ensemble.c.o
[ 61%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Ens_processing.c.o
/root/wgrib2/wgrib2/Ens_processing.c: In function ‘wrt_ens_proc.isra’:
/root/wgrib2/wgrib2/Ens_processing.c:563:35: warning: writing 1 byte into a region of size 0 []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-overflow=-Wstringop-overflow=]8;;]
  563 |         table_4_9_probability[-2] = 1;
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/root/wgrib2/wgrib2/Ens_processing.c:347:33: note: at offset -2 into destination object of size [0, 9223372036854775807] allocated by ‘code_table_4_9_location’
  347 |         table_4_9_probability = code_table_4_9_location(new_sec_probability);
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/wgrib2/wgrib2/Ens_processing.c:564:35: warning: writing 1 byte into a region of size 0 []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-overflow=-Wstringop-overflow=]8;;]
  564 |         table_4_9_probability[-1] = 2;
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/root/wgrib2/wgrib2/Ens_processing.c:347:33: note: at offset -1 into destination object of size [0, 9223372036854775807] allocated by ‘code_table_4_9_location’
  347 |         table_4_9_probability = code_table_4_9_location(new_sec_probability);
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/wgrib2/wgrib2/Ens_processing.c:574:35: warning: writing 1 byte into a region of size 0 []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-overflow=-Wstringop-overflow=]8;;]
  574 |         table_4_9_probability[-2] = 2;
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/root/wgrib2/wgrib2/Ens_processing.c:347:33: note: at offset -2 into destination object of size [0, 9223372036854775807] allocated by ‘code_table_4_9_location’
  347 |         table_4_9_probability = code_table_4_9_location(new_sec_probability);
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/wgrib2/wgrib2/Ens_processing.c:575:35: warning: writing 1 byte into a region of size 0 []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-overflow=-Wstringop-overflow=]8;;]
  575 |         table_4_9_probability[-1] = 2;
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/root/wgrib2/wgrib2/Ens_processing.c:347:33: note: at offset -1 into destination object of size [0, 9223372036854775807] allocated by ‘code_table_4_9_location’
  347 |         table_4_9_probability = code_table_4_9_location(new_sec_probability);
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/wgrib2/wgrib2/Ens_processing.c:551:35: warning: writing 1 byte into a region of size 0 []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-overflow=-Wstringop-overflow=]8;;]
  551 |         table_4_9_probability[-2] = 1;
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/root/wgrib2/wgrib2/Ens_processing.c:347:33: note: at offset -2 into destination object of size [0, 9223372036854775807] allocated by ‘code_table_4_9_location’
  347 |         table_4_9_probability = code_table_4_9_location(new_sec_probability);
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/wgrib2/wgrib2/Ens_processing.c:552:35: warning: writing 1 byte into a region of size 0 []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-overflow=-Wstringop-overflow=]8;;]
  552 |         table_4_9_probability[-1] = 1;
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
/root/wgrib2/wgrib2/Ens_processing.c:347:33: note: at offset -1 into destination object of size [0, 9223372036854775807] allocated by ‘code_table_4_9_location’
  347 |         table_4_9_probability = code_table_4_9_location(new_sec_probability);
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 62%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Ens_qc.c.o
[ 62%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/EOF.c.o
[ 62%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Export_lonlat.c.o
[ 62%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/ExtName.c.o
[ 62%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/fatal_error.c.o
[ 63%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Fcst_ave.c.o
[ 63%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/ffopen.c.o
[ 63%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Fi.c.o
[ 63%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/File.c.o
[ 63%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Fix_CFSv2_fcst.c.o
[ 63%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Fix_ncep_2.c.o
[ 64%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Fix_ncep_3.c.o
[ 64%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Fix_ncep_4.c.o
[ 64%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Fix_ncep.c.o
[ 64%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Fix_undef.c.o
[ 64%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/FlagTable.c.o
[ 65%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/flt2ieee.c.o
[ 65%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/flt2ieee_nan.c.o
[ 65%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Flush.c.o
[ 65%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/fnlist.c.o
[ 65%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/For.c.o
[ 66%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Ftime1.c.o
[ 66%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Ftime2.c.o
[ 66%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Ftime.c.o
[ 66%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Ftn_api.c.o
[ 66%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/gaussian2ij.c.o
[ 67%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Gctpc.c.o
[ 67%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/gctpc_ll2xy.c.o
[ 67%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/GDT.c.o
[ 67%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/geo.c.o
[ 67%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Geolocation.c.o
[ 67%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/get_unixtime.c.o
[ 68%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Grads.c.o
[ 68%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Grib.c.o
[ 68%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Grib_out_irr2.c.o
[ 68%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Grib_out_irr.c.o
[ 68%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/gribtab.c.o
[ 69%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Gribtable_used.c.o
[ 69%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Grid_def.c.o
[ 69%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Grid_id.c.o
[ 69%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/grid_ident.c.o
[ 69%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Gridout.c.o
[ 70%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Help.c.o
[ 70%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Hybrid.c.o
[ 70%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/ieee2flt.c.o
[ 70%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/ieee2flt_nan.c.o
[ 70%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/ieee_pk.c.o
[ 71%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/If_delayed_error.c.o
[ 71%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/If_rec.c.o
[ 71%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Import.c.o
[ 71%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Import_grib.c.o
[ 71%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Import_grib_fs.c.o
[ 72%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Import_lonlat.c.o
[ 72%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Import_netcdf.c.o
[ 72%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/init.c.o
[ 72%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/int8.c.o
[ 72%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/intpower.c.o
[ 72%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Inv.c.o
[ 73%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Inv_no.c.o
[ 73%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Irr_grids.c.o
[ 73%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/itoshort_a.c.o
[ 73%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/JMA.c.o
[ 73%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/jpeg_pk.c.o
[ 74%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Last.c.o
[ 74%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/lat2ij.c.o
[ 74%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Latlon.c.o
[ 74%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Level.c.o
[ 74%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Limit.c.o
[ 75%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Lola.c.o
[ 75%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Lvl.c.o
[ 75%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Macro.c.o
[ 75%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/manage_inv_out.c.o
[ 75%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Match.c.o
[ 76%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Match_fs.c.o
[ 76%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Match_inv.c.o
[ 76%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Mem_buffer.c.o
[ 76%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Merge.c.o
[ 76%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Misc.c.o
[ 76%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/missing.c.o
[ 77%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/mk_gdt.c.o
[ 77%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Model_version_date.c.o
[ 77%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Mod_grib.c.o
[ 77%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Names.c.o
[ 77%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/ncep_grids.c.o
[ 78%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/NCEP_norm.c.o
[ 78%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/NCEP_uv.c.o
[ 78%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Ncpu.c.o
[ 78%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Ndate.c.o
[ 78%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Ndates.c.o
[ 79%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Netcdf.c.o
[ 79%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Netcdf_sup.c.o
[ 79%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/New_grid.c.o
/root/wgrib2/wgrib2/New_grid.c:58:20: warning: ‘UV_vectors’ defined but not used []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-variable-Wunused-variable]8;;]
   58 | static const char *UV_vectors[] = { "UGRD", "VGRD", NULL };
      |                    ^~~~~~~~~~
/root/wgrib2/wgrib2/New_grid.c:55:20: warning: ‘no_vectors’ defined but not used []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-variable-Wunused-variable]8;;]
   55 | static const char *no_vectors[] = { NULL };
      |                    ^~~~~~~~~~
[ 79%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/new_grid_lambertc.c.o
[ 79%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/New_grid_order.c.o
[ 80%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/openmp_util.c.o
[ 80%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/parse_loop.c.o
[ 80%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/parse_msg.c.o
[ 80%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/pdt_len.c.o
[ 80%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Precision.c.o
[ 80%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Prob.c.o
[ 81%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Proj4.c.o
[ 81%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/proj4_initialize.c.o
[ 81%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/proj4_transform.c.o
[ 81%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/PyInv.c.o
[ 81%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Range.c.o
[ 82%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/rdieee_file.c.o
[ 82%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/rd_inventory.c.o
[ 82%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/rd_seq_grib.c.o
[ 82%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/read_latlon.c.o
[ 82%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Reduced_gaussian_grid.c.o
[ 83%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Reset_delayed_error.c.o
[ 83%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/rotll.c.o
[ 83%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/RPN.c.o
[ 83%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/save_string.c.o
[ 83%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Scaling_0001.c.o
[ 84%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Scan.c.o
[ 84%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Sec0.c.o
[ 84%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Sec1.c.o
[ 84%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Sec3.c.o
/root/wgrib2/wgrib2/Sec3.c: In function ‘f_grid’:
/root/wgrib2/wgrib2/Sec3.c:989:13: warning: this ‘else’ clause does not guard... []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wmisleading-indentation-Wmisleading-indentation]8;;]
  989 |             else
      |             ^~~~
/root/wgrib2/wgrib2/Sec3.c:993:17: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
  993 |                 break;
      |                 ^~~~~
[ 84%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/sec3_grids.c.o
[ 84%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Sec4.c.o
[ 85%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Sec5.c.o
[ 85%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Sec6.c.o
[ 85%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Sec_len.c.o
[ 85%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Set_byte.c.o
[ 85%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Set_date.c.o
[ 86%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Set_ensm_derived_fcst.c.o
[ 86%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Set_ens_num.c.o
[ 86%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Set_ftime1.c.o
[ 86%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Set_ftime2.c.o
[ 86%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Set_ftime_mode.c.o
[ 87%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Set_gds.c.o
/root/wgrib2/wgrib2/Set_gds.c: In function ‘f_set_gds’:
/root/wgrib2/wgrib2/Set_gds.c:47:17: warning: writing 1 byte into a region of size 0 []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-overflow=-Wstringop-overflow=]8;;]
   47 |     new_sec3[4] = 3;
      |     ~~~~~~~~~~~~^~~
/root/wgrib2/wgrib2/Set_gds.c:41:34: note: at offset 4 into destination object of size [0, 4] allocated by ‘malloc’
   41 |     new_sec3 = (unsigned char *) malloc(sizeof(unsigned char) * (size_t) size_new_sec3);
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 87%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Set_metadata.c.o
[ 87%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Set_pdt.c.o
[ 87%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Set_percentile.c.o
[ 87%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Set_prob.c.o
[ 88%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Set_sec_size.c.o
[ 88%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Set_ts_dates.c.o
[ 88%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/setup_user_gribtable.c.o
[ 88%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Set_val.c.o
[ 88%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/simple_pk.c.o
[ 88%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Small_grib.c.o
[ 89%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/space_view2ij.c.o
/root/wgrib2/wgrib2/space_view2ij.c:56:16: warning: ‘lon’ defined but not used []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-variable-Wunused-variable]8;;]
   56 | static double *lon;
      |                ^~~
[ 89%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/space_view.c.o
[ 89%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/SpatialProcessing.c.o
[ 89%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Spectral_bands.c.o
/root/wgrib2/wgrib2/Spectral_bands.c: In function ‘f_spectral_bands_extname’:
/root/wgrib2/wgrib2/Spectral_bands.c:38:26: warning: variable ‘longname’ set but not used []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-but-set-variable-Wunused-but-set-variable]8;;]
   38 |     const char *agency, *longname;    /* unused, but set in include files */
      |                          ^~~~~~~~
/root/wgrib2/wgrib2/Spectral_bands.c:38:17: warning: variable ‘agency’ set but not used []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-but-set-variable-Wunused-but-set-variable]8;;]
   38 |     const char *agency, *longname;    /* unused, but set in include files */
      |                 ^~~~~~
[ 89%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/stagger.c.o
[ 90%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Status.c.o
[ 90%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/string2time_unit.c.o
[ 90%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Submsg_uv.c.o
[ 90%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/subtime.c.o
[ 90%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Summary.c.o
[ 91%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/swap_buffer.c.o
[ 91%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/test_sec.c.o
[ 91%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Tigge.c.o
[ 91%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Time_processing.c.o
[ 91%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Timer.c.o
[ 92%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Tosubmsg.c.o
[ 92%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Type_reftime.c.o
[ 92%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/UDF.c.o
[ 92%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Undefine.c.o
[ 92%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/units.c.o
[ 92%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Unix_time.c.o
[ 93%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Unmerge_fcst.c.o
[ 93%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/unpk_0.c.o
[ 93%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/unpk.c.o
[ 93%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/unpk_complex.c.o
[ 93%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/unpk_run_length.c.o
[ 94%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/update_sec3.c.o
[ 94%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/update_sec4.c.o
[ 94%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/v1_v2_if.c.o
[ 94%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/VerfTime.c.o
[ 94%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Warn_old_g2lib.c.o
[ 95%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Waves.c.o
[ 95%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/wgrib2_api.c.o
[ 95%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/wgrib2.c.o
[ 95%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Wind_dir.c.o
[ 95%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Wind_speed.c.o
[ 96%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Wind_uv.c.o
[ 96%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Write_sec.c.o
[ 96%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/Wrt_grib.c.o
[ 96%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/wrtieee.c.o
[ 96%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/wxtext.c.o
[ 97%] Linking C shared library libwgrib2.so
[ 97%] Built target wgrib2_lib
[ 98%] Building C object aux_progs/CMakeFiles/gmerge.dir/gmerge.c.o
[ 98%] Building C object aux_progs/CMakeFiles/gmerge.dir/uint8.c.o
[ 98%] Linking C executable gmerge
[ 98%] Built target gmerge
[ 98%] Building C object aux_progs/CMakeFiles/smallest_grib2.dir/smallest_grib2.c.o
[ 98%] Building C object aux_progs/CMakeFiles/smallest_grib2.dir/uint8.c.o
[ 98%] Linking C executable smallest_grib2
[ 98%] Built target smallest_grib2
[ 98%] Building C object aux_progs/CMakeFiles/smallest_4.dir/smallest_4.c.o
[ 99%] Building C object aux_progs/CMakeFiles/smallest_4.dir/uint8.c.o
[ 99%] Linking C executable smallest_4
[ 99%] Built target smallest_4
[100%] Building C object wgrib/CMakeFiles/wgrib.dir/wgrib.c.o
[100%] Linking C executable wgrib
[100%] Built target wgrib

3.3 実行ファイルのコピー¶

 これでwgrib2の実行ファイルwgrib2 が、/root/wgrib2/build/wgrib2 に出来上がりました。今回作成したwgrib2はこの実行ファイルが一つあれば動作します。
ところで、このファイルは、Colabの仮想マシン上に存在するので、一定の時間がたつと綺麗さっぱり消去されてしまいます。せっかく苦労して作ったのですから、Googleドライブにコピーして、いつまでも使えるようにしておきましょう。

 そのために、以下を実行してください。

In [12]:
!mkdir /content/drive/MyDrive/WXBC/wgrib2
!cp /root/wgrib2/build/wgrib2/wgrib2 /content/drive/MyDrive/WXBC/wgrib2/wgrib2

3.4 wxbcbribx.pyの編集¶

 wxbcbribx.py はWXBCオリジナルPythonライブラリー wxbcbribx の実体です。 wxbcbribxはGRIBファイルからのデータの取り出しなど簡単に実行できるPythonライブラリーですが、このライブラリ自体にGRIBファイルを操作する機能はなく、wgrib2にそれを任せています。そのため、ライブラリに、wgrib2がインストールされている場所を指定する必要があります。

 画面左端にあるフォルダの形をしたアイコンをクリックしてリストを表示させ、ファイル /content/drive/MyDrive/WXBC/challenge3/wxbcgribx.py を見つけてください。

 見つけられたらそれをダブルクリックして開き、40行目から42行目までをすべてコメントアウトし、43行目行頭のハッシュ(#)を外してこの行だけを有効します。

 変更したら保存して閉じてください。

参考 Pythonライブラリーのインストール¶

 GoogleColabには、主だったPythonライブラリーがすでにインストールされていますが、netcdf4 と cartopy については利用者側でインストールする必要があります。できればこれらもGoogleドライブ上にインストールしたいところですが、そうすると、すでにインストールされているライブラリーとの間で不整合が生じてしまうためできません。

 ここでは行なわず、仮想マシンを開始するたびに以下を実行します。

!pip install netcdf4
!pip install cartopy

 以上で、Google Colaboraty で受講するための準備は終了しました。続いて、環境が正しく構築されているかどうをNotebook setup_test.ipynb で確認してください。この Notebook は、Googleドライブの マイドライブ/WXBC/challenge3 に置かれています。

 このNotebookを閉じてから、Googleドライブでマイドライブ/WXBC/challenge3 を開き、setup_test.ipynb にマウスカーソルを乗せて右クリックし、「アプリで実行」> 「GoogleColaboratory」を選択して開いてください。