GRIB2関連サイトurl

【PHP入門】fgetcsvでCSVファイルの読み込みをする方法!


PHPでライブラリを使わず独力でGRIB2(気象バイナリデータ)を読む
上にリンクにある気象庁サンプルプログラムは、データを4バイト整数の配列で出力する。

本家
wgrib2: wgrib for GRIB-2
JMA
配信資料に関する技術情報(気象編)第129号
FTP 方式の 30 分毎の解析雨量及び降水短時間予報 GPV
↑(sakura-tempAフォルダにソースを入力し動作させたものがある。不完全な出力 解明は未定!!)
↑desktop2と同階層にgrib2があり、そこにソース(PDFに掲載)などあり。

その後、ソース発見!!
jingwood / grib2_dec
jingwood / grib2_dec

GRIB2フォーマットの解読方法

気象データ高度利用ポータルサイト
メソ数値予報モデルGPV(MSM)
気象データ高度利用ポータルサイト
GPVサンプルデータの一覧
配信資料に関する技術情報


wgrib2

GRIB2形式データを処理するプログラムwgrib2(入門編)


気象庁データ プロファイラなど
以下ダウンロード可

  • 数値予報GPV
  • 全国合成レーダーGPV
  • ウィンドプロファイラ観測データ

地域活性化のための気象データ活用と実践

GRIB2形式データを処理するプログラムwgrib2(入門編)

Read a csv file and create another csv file using php

配信資料に関する技術情報

Windows環境でGRIB2形式データをCSV形式に変換する(ある地点のデータを抽出する)
GrADSの説明ページ


局地気象(愛知)


2022 令和4年 5月29日

気象庁の資料(PDF)からのソース入力完了。。。
コンパイルまでok.実行はこれから。

sample_grib2_dec.c:126:8: error: implicit declaration of function ‘decode_rlen_nbit’ is invalid in C99 [-Werror,-Wimplicit-function-declaration]
rt = decode_rlen_nbit(*lv, sizeof(int), *(ss[6].v+2), nin, nout, maxv, nbit);
^
^~~~~~~~~~~~~~~~~
sample_grib2_dec.c:226:9: error: implicit declaration of function ‘i2pix’ is invalid in C99 [-Werror,-Wimplicit-function-declaration]
i2pix(lv, *xs, *ys, maxv, fpo);


makeを使わず以下により、コンパイル!!

sample_grib2_dec.cに以下追加。(事前宣言)

int decode_rlen_nbit(void *udata, size_t utype, unsigned char *din, int nin,
int nout, int maxv, int nbit);
void i2pix();

cc -c rlencmp.c
cc -c sample_grib2_dec.c

cc sample_grib2_dec.c rlencmp.o i2pix.o

以上でok.
Xcode – Warning: Implicit declaration of function is invalid in C99

2022 令和4年 5月31日

wgrib2をmacにインストール。(/Users/********/wgrib2/grib2)

(/usr/local/bin)

神サイト(このサイトの前に試行錯誤するも、ここの記載どおりで、コンパイルok)
振り返ると、gcc gcc-11 gfortran gfortran-11の部分が最後に効いたと思われる。)
注意点として、実行ファイルは、ひとつ下のwgrib2フォルダ内に作成される。
MAC OS MONTEREY 12.4(21F79)
wgrib2 –version
v3.1.1 4/2022

HOW TO INSTALL AND COMPILE WGRIB2 ON MACOS (EL CAPITAN THROUGH MONTEREY)
MACOSにWGRIB2をインストールしてコンパイルする方法(EL CAPITANからMONTEREYまで)

Getting configure error installing wgrib2 on macOS

wgrib2 v3.0.0 を macOS Catalina にインストールする

2022 令和4年 6月1日

ほぼ、1日かけて、インストール終了したので、次は使い方。
GRIB2形式データを処理するプログラムwgrib2(入門編)

Index of /seminars/numerical/gpv
メソ客観解析データ(3時間値)の解析

Components of a GrADS Data Descriptor File

Windows環境でGRIB2形式データをCSV形式に変換する(ある地点のデータを抽出する)


grads

下のサイトで、1発インストール。書いてある通り、その前にMacPortsをインストールする。
その後、sudo port install gradsで簡単インストール
/opt/local/bin/grads
Grid Analysis and Display System (GrADS) Version 2.2.1
grads


Grid Analysis and Display System (GrADS) Version 2.2.1
Copyright (C) 1988-2018 by George Mason University
GrADS comes with ABSOLUTELY NO WARRANTY
See file COPYRIGHT for more information

Config: v2.2.1 little-endian readline grib2 netcdf hdf4-sds hdf5 opendap-grids geotiff shapefile
Issue ‘q config’ and ‘q gxconfig’ commands for more detailed configuration information
Landscape mode? (‘n’ for portrait):
GX Package Initialization: Size = 11 8.5
GX Package Error: Could not find a record for the printing plug-in named “Cairo”
* The environment variable GAUDPT has not been set
* Unable to open the default User Defined Plug-in Table: /usr/local/lib/grads/udpt
Please read the documentation at http://cola.gmu.edu/grads/gadoc/plugins.html
GX Package Terminated


あくまで、以下は参考
MacにGrADSをインストールする

2022 令和4年 6月2日

srcからのインストール(以下error)
libtool:   error: cannot determine absolute directory name of ‘..//lib’

ここまでの整理
① bin install (‘/usr/lib/libpng15.15.dylib’ (no such file)・・・が無い エラー
② portによるインストール・・・carioが無い エラー
③ srcによるインストール・・・libtool関連 エラー

②に関して、carioがsrc libにあるようなので、適当なところにコピーしてudpを作成か

grads-2.2.1(bin)
grads-2.2.2_src


GrADS2.2.0安装经验总结
【情報共有】 GrADS2.2.0インストール体験概要
プリコンパイルされたファイルの解凍とインストール


環境変数の概要
1.フォントとマップファイルのパスを含むGADDIR。GADDIRが設定されていない場合、GrADSはGADDIR = / usr / local / lib/gradsを考慮します。これはデフォルト設定です。関連ファイルは、OpenGrADS2.1.0のResources/SupportDataからコピーできます。
2. GASICRP、スクリプトファイルパス、関連ファイルは、OpenGrADS2.1.0のリソース/スクリプトからコピーできます。
3. GASHP、shpファイルパス、関連ファイルは、OpenGrADS2.1.0のResources/SupportDataからコピーできます。
4. GAUDP、これは非常に重要です。これはバージョン2.1.1以降でのみ使用可能であるため、OpenGrADS2.1.0は存在しません。変更するパスは、プラグインインターフェイスを定義することです。詳細については、(http://cola.gmu.edu/grads/gadoc/udpt.html)を参照してください

updtファイルを作成します(http://を参照)。 cola.gmu.edu/grads /gadoc/udpt.html)
cd suppdata
vim updt(次に、次のコンテンツをコピーします。必要に応じて変更してください)
#タイプ名共有オブジェクトファイルへのフルパス
#—- —- —————- —————
gxdisplay Cairo /app/software/grads-2.2.0/grads/lib/libgxdCairo.so
gxdisplay X11 /app/software/grads-2.2.0/grads/ lib / libgxdX11.so
gxdisplay gxdummy /app/software/grads-2.2.0/grads/lib/libgxdummy.so
*
gxprint Cairo /app/software/grads-2.2.0/grads/lib/libgxpCairo.so
gxprint GD / app /software/grads-2.2.0/grads/lib/libgxpGD.so
gxprint gxdummy /app/software/grads-2.2.0/grads/lib/libgxdummy.so
*
* function dothis /home/username/grads/udp/dothis .so5

.環境変数を構成します(ksh–>> export -p
((export ULB=/usr/local/bin)) kshにそのまま入力する。
第3部で紹介した環境変数の意味設定に従って、$ HOME / .bashrc
export GADDIR = / app / software / grads-2.2.0 / suppdata
export GASCRP = / app / software/grads-2.2に追加できます。 0 / scripts
export GASHP = / app / software / grads-2.2.0 / suppdata
export GAUDPT = / app / software / grads-2.2.0 / suppdata
export PATH = / app / software / grads-2.2.0 / grads / bin :$ PATH
#export PATH = / app / software / grads-2.2.0 / supplibs / bin:$ PATH(この項目はオプションです。理由を理解してください)


export GAUDPT=/usr/local/grads/suppdata
export GADDIR=/usr/local/grads/suppdata
export GASHP=/usr/local/grads/suppdata


以下最終版 2022 06 14
export GADDIR=/usr/local/lib/grads-2.2.1/suppdata
export GASCRP=/usr/local/lib/grads-2.2.1/scripts    –> 地図描画
export GASHP=/usr/local/lib/grads-2.2.1/suppdata
export GAUDPT=/usr/local/lib/grads-2.2.1/suppdata

export GADDIR=/usr/local/lib/grads-2.2.1/suppdata
export GASCRP=/usr/local/lib/grads-2.2.1/scripts
export GASHP=/usr/local/lib/grads-2.2.1/suppdata
export GAUDPT=/usr/local/lib/grads-2.2.1/suppdata


*******@NaokinoMacBook-Pro grads-2.2.2 % echo $SHELL
/bin/zsh
Language:
Bash and Korn Shell Environment Variables
export VARIABLE=value

— ksh command —
export -p
echo $SHELL

#環境変数を削除したい
unset ULB #[$]は入力しなくて良い。

echo $ULB
#何も出力されない。

2022 令和4年 6月1日

最終的にMacPorts版にて動作。
ただし、以下オプションによる。
GX版と落ちる!!原因不明。
grads -h GD -d X11

設定としては、JMAフォルダの階層が、必要。
更に、ksh export(環境変数) GAUDPT環境変数によって指定されるudptファイル及びこれに記述される関連フォルダも必要)

suppliesをダウンロードし、JMAフォルダへ
scriptsをダウンロードし、scriptsフォルダへ
grads-2.2.1-bin-darwin17.5.tar.gzのbinフォルダをbinフォルダへcopy

grads options
The User-Defined Plug-in Table (UDPT)
PATHを通すために環境変数の設定を理解する (Mac OS X)

フォルダgrads-2.2.2内のINSTALLも参考に!!

MacPorts で GrADS をインストールして起動しない時 (Monterey)



2022 令和4年 6月4日

grads -h GD -d X11
にて動作ok.
MSMでの表示までok.

Error opening stroke character data set
については、以下サイト
💚コンピュータさんとの共同生活
ftpにてdata3ダウンロード フォントあり。
フォルダへコピーしてok.

本日ここまで・・・

2022 令和4年 6月4日

grads wgrib2の設定などいろいろ


2022 令和4年 6月5日

GRIB2形式データを処理するプログラムwgrib2(入門編)

wgrib2を用いたGRIB2形式データの領域抽出

Index of /seminars/numerical/gpv
メソ客観解析データ(3時間値)の解析

Components of a GrADS Data Descriptor File

Windows環境でGRIB2形式データをCSV形式に変換する(ある地点のデータを抽出する)
wgrib2.exe -match “:UGRD:10 m above ground:anl:” C:\Users\user\Downloads\msm_wind\Z__C_RJTD_20181023000000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin -csv C:\Users\user\Downloads\msm_wind\UGRD.csv

今更ですが、気象データを解析してみた(後半は、ruby)

コマンド一覧
Components of a GrADS Data Descriptor File
GrADSデータ記述子ファイルのコンポーネント

東北大学
💚公開情報/GrADS/GrADSのTips

Tutorial
Tutorial(example.tar.gz )
チュートリアル(EnEspañol)

2022 令和4年 6月8日

cron grads
GrADSをcronで実行する(cron grads)

FORTRAN(c) OPEN バイナリ形式のファイル ー>grads描画
格子点データの解析(01)
wgrib2 grads描画 850hPa 気温と 700hPa 鉛直流の分布図を重ねて描く
格子点データの解析(02)
wgrib2 grads描画 風などベクトル図を描く例あり
格子点データの解析(03)
気象庁全国合成レーダーの解析
格子点データの解析(04)
海面水温と海面高度の解析
格子点データの解析(05)

wgrib2 使用方法(筑波大)


オプションなしのwgrib2で出力したGRIB2形式データの情報をgrepコマンドで気温(TMP)だけ抽出してパイプで渡すと、そのデータだけ処理することができます。


$ wgrib2 Z__C_RJTD_20191226000000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin | grep “TMP” | wgrib2 -i -no_header Z__C_RJTD_20191226000000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin -no_append -ieee output.bin

オプションは以下の通り。
-i:入力ファイルの指定
-no_header:direct access用ファイル指定
-ieee:big_endianのバイナリファイルを出力

match
wgrib2 ifile.grb2 -match “:HGT:500 mb:” -no_header -bin ofile_z500.bin

CSV
$ wgrib2 Z__C_RJTD_20191226000000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin | grep “TMP” | grep “:1 hour fcst:” | wgrib2 -i Z__C_RJTD_20191226000000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin -csv output.csv

PATH=コピーしたPATH
* * * * * grads -blc sample.gs
gradsのオプションbは、バッチモードで実行します。グラフィックウィンドウ(絵が描画されるときのウィンドウ)が開きません。

gradsを起動する際、コマンドで「grads」と実行した後、もう一度、Enterを押さないといけませんでしたが、オプションlは、それを省略できます。

オプションcは、gradsのスクリプトファイルを指定できます。


2022 令和4年 6月11日

気象庁ソース版(sample_grib2_dec.c)は、 desktop2と同じレベルgrib2フォルダにあり。
↑は、msm等では無く、解析雨量版(GRIB2のフォーマット)であること。
解析雨量と降水短時間予報
grib2_dec
4バイト整数の配列で出力または、xpm .
データの経度方向の格子間隔は45秒、緯度方向の格子間隔は30秒(GIS第三次メッシュ相当)で ある。経度118~150度、緯度20~48度の領域を、経度方向には2560格子、緯度方向には3360格 子(図1参照)で区切ったデータから、必要な矩形領域を抽出して提供する。 ・各フォーマット中のバイナリーデータは、ビッグエンディアンで設定する。
実際のデータは、ランレングス圧縮後、第7節の6バイト目以降に設定する。圧縮に用いるレベルの 最大値はそのファイル中の最大値を用いるのでファイルによって値が異なる点に注意。

php版のソース解析(添付のcソースを含め)。理解深まるもまだ不十分。

2022 令和4年 6月12日

解析雨量及び降水短時間予報GPVソース発見 コンパイル&実行結果は、手入力版とほぼ変わらず
暫くは、grib2データの解析か
気象庁のウィンドプロファイラのデータを読む (Python による試作、暫定メモ)

Python Tutorial

確認として、ctlファイルを作成して、gradsでの表示を試してみる事。

2022 令和4年 6月13日

サーバーPython確認 おk
python
Python 2.7.6 (default, May 21 2014, 16:52:04)
[GCC 4.2.1 20070831 patched [FreeBSD]] on freebsd9
Type “help”, “copyright”, “credits” or “license” for more information.

2022 令和4年 6月14日

気象庁ソース(ダウンロードバージョン)手入力版と同じ。
wgrib2による抽出版では、上手くいく。ソース版は、どこかに不具合ありと判断(ファイル容量は同じ
以下手順など

GrADSのコントロールファイルのdset変更。

> open grads.ctl
> set mpdset hires
> set t 1
> set gxout grfill
> d tmp

ソース版
ga-> d tmp
Contouring: 0 to 2e+12 interval 2e+11

wgrad2版
ga-> d tmp
Contouring: 0 to 100 interval 10

再起動により、PATHが消えたので、再入力(ksh export)

気象データサイエンティスト
解析雨量をGrADSで読む (2021年4月の作業メモ)
g2ctl↓
wgrib2とg2ctlのインストール
GRIB2データのGrads形式への変換

python学習(翻訳版)
python学習 オリジナル

wgrib2 使用方法

2022 令和4年 6月15日

① MACにて、図を作成する。(コマンド実行)
PMブログ 気象の研究をしている現役大学院生
NetCDF
MSM(NetCDF)データをGrADSで開く
↑容量大のためか、ダウンロード出来ず!!

自動ダウンロード

過去データの自動ダウンロード方法について

② サーバーでの実行に進む。


curl


How to use Python to execute a cURL command?

2022 令和4年 6月19日

① MACにて、図を作成する。(コマンド実行)ーー>> 続き

pygribで気象庁のGRIB2ファイルを読む

grads -h GD -d X11

ユーザーの.zshrcファイルは次のパスの場所にあります。
〜/.zshrc

UNIX/Linuxの部屋 用語集:シェル記号類まとめ

touchはファイルのタイムスタンプを変更するコマンドだ。

また、存在しないファイル名を指定することで、内容の入っていないファイルを新規作成する機能も持っている。

まだ手動で作成していない場合。 zshrcファイルの場合、ファイルはデフォルトでは存在しません。

次のコマンドで作成できます:

touch〜/.zshrc

または、テキストエディタを起動してnanoのように.zshrcを作成します。

nano〜/.zsrch

シェルの設定ファイルを再読み込み
source .zshrc

★★★★★★★★★ 850hPaの15時間予報のみ抽出

wgrib2 Z__C_RJTD_20220528120000_MSM_GPV_Rjp_L-pall_FH00-15_grib2.bin | grep “TMP:850” | grep “mb:15” | wgrib2 -i -no_header Z__C_RJTD_20220528120000_MSM_GPV_Rjp_L-pall_FH00-15_grib2.bin -no_append -ieee output_p.bin
1.494:0:d=2022052812:TMP:850 mb:15 hour fcst:
1.492:0:d=2022052812:UGRD:850 mb:15 hour fcst:
1.493:0:d=2022052812:VGRD:850 mb:15 hour fcst:

気圧面の情報
1.1:0:grid_template=0:winds(N/S):
lat-lon grid:(241 x 253) units 1e-06 input WE:NS output WE:SN res 48
lat 47.600000 to 22.400000 by 0.100000
lon 120.000000 to 150.000000 by 0.125000 #points=60973

地上面の情報
1.190:0:grid_template=0:winds(N/S):
lat-lon grid:(481 x 505) units 1e-06 input WE:NS output WE:SN res 48
lat 47.600000 to 22.400000 by 0.050000
lon 120.000000 to 150.000000 by 0.062500 #points=242905

ga-> q ctlinfo
dset output_p.bin
title MSM-GPV temperature
undef 9.999e+20
xdef 241 linear 120 0.125
ydef 253 linear 22.4 0.1
zdef 1 linear 1000 1
tdef 1 linear 00Z26DEC2019 60mn
vars 1
tmp 1 0 temperature
endvars
ga->

set gxout contour
set gxout grfill

コンター描画
GrADS-Note(気象データ解析ツールであるGrADSについての情報をまとめています。)
GrADSコマンドのメモ



2022 令和4年 6月20日

気圧面の抽出描画・・・昨日からの続き

wgrib2 Z__C_RJTD_20220528120000_MSM_GPV_Rjp_L-pall_FH00-15_grib2.bin | grep “TMP:850” | grep “mb:15” | wgrib2 -i -no_header Z__C_RJTD_20220528120000_MSM_GPV_Rjp_L-pall_FH00-15_grib2.bin -no_append -ieee output_p.bin

wgrib2 Z__C_RJTD_20220528120000_MSM_GPV_Rjp_L-pall_FH00-15_grib2.bin | grep “UGRD:850” | grep “mb:15” | wgrib2 -i -no_header Z__C_RJTD_20220528120000_MSM_GPV_Rjp_L-pall_FH00-15_grib2.bin -no_append -ieee output_p85_u.bin

1.491:0:d=2022052812:HGT:850 mb:15 hour fcst:
1.492:0:d=2022052812:UGRD:850 mb:15 hour fcst:
1.493:0:d=2022052812:VGRD:850 mb:15 hour fcst:
1.494:0:d=2022052812:TMP:850 mb:15 hour fcst:
1.495:0:d=2022052812:VVEL:850 mb:15 hour fcst:
1.496:0:d=2022052812:RH:850 mb:15 hour fcst:

U850.ctl
V850.ctl

表示する格子は自由に設定可。(間引き表示)
open U850.ctl
open V850.ctl
set mpdset hires
set lon 128 139
set lat 32 40
set gxout vector
set cthick 3
d skip(a.1,4,4);a.2

open grads.ctl
set mpdset hires
set t 1
set gxout grfill

d sqrt(u*u+v*v)
d mag(u,v)

clear
set gxout vector
d u;v

Lsurf( 格子数など格子間隔の違いに注意)
dset output.bin
options big_endian
undef 9.999E+20
title MSM-GPV temperature
xdef 481 linear 120.0 0.0625
ydef 505 linear 22.4 0.05
zdef 1 levels 1000.0
tdef 16 linear 00Z26DEC2019 1hr
vars 1
tmp 1 0 temperature
endvars

L-pall( 格子数など格子間隔の違いに注意)
DSET output_p85_v.bin
UNDEF 9.999E+20
XDEF 241 LINEAR 120.0 0.1250
YDEF 253 LINEAR 22.4 0.1000
ZDEF 1 LEVELS 1000
TDEF 1 LINEAR 00z01jan2014 3hr
VARS 1
A 0 99 Output
ENDVARS

vars設定は必須
vars 1
A 0 99 output
endvars

big_endian無し
Contouring: -0 to 7e+30 interval 1e+30
Contouring: -6e+32 to 0 interval 5e+31
big_endian有り
Contouring: -20 to 25 interval 5
Contouring: -15 to 25 interval 5

GrADS MSM気圧面データ 取得&描画 バイナリファイル編
wgrib2 使用方法(早崎)

vector-Contouring描画不具合!!原因は以下の設定抜け
options big_endian

上のスクリプトは以下↓
open U850.ctl
open V850.ctl
set mpdset hires
set gxout vector
set cthick 3
d skip(a.1,10,10);a.2

d skip(a.1,4,4);a.2

d sqrt(a.1*a.1+a.2*a.2)
上と下は同じ
d mag(a.1,a.2)

関連サイトリンク
降水量と風と相対湿度 grads vector
GrADS講座

2022 令和4年 6月21日

スクリプトを実行する(grads)
GrADSスクリプトのTips

run ファイル名 [引数]
run test1.gs

‘open U850.ctl’
‘open V850.ctl’
‘set mpdset hires’
‘set gxout vector’
‘set cthick 3’
‘d skip(a.1,10,10);a.2’

GrADSコマンドのメモ
収束・発散 hdivgなどあり
GrADS-Note(収束・発散 hdivgなどあり)
GrADS の使い方

cron設定
$ which grads
$ echo $PATHcron

PATH=コピーしたPATH
* * * * * grads -blc sample.gs

which grads
/opt/local/bin/grads

/Users/********/grib2

New Graphics Capabilities in GrADS
gxprint

grads -h GD -d X1

grads -d X11

gxprint out.png

grads -help

GrADS User’s Guide Table of Contents

Command line options for GrADS version 2.2.1:

-help Prints out this help message
-a ratio Sets the aspect ratio of the real page
-b Enables batch mode (graphics window is not opened)
-c cmd Executes the command ‘cmd’ after startup
-C N Enables colorization of text with color scheme N (default scheme is 0)
-d name Name of the graphics display package, given in ‘gxdisplay’ entry of UDPT
-E Disables command line editing
-g WxH+X+Y Sets size of graphics window
-H fname Enables command line logging to file ‘fname’ (default fname is $HOME/.grads.log)
-h name Name of the graphics hardcopy printing package, given in ‘gxprint’ entry of UDPT
-l Starts in landscape mode with real page size 11 x 8.5
-p Starts in portrait mode with real page size 8.5 x 11
-m NNN Sets metafile buffer size to NNN (must be an integer)
-u Unbuffers stdout/stderr, disables command line editing
-x Causes GrADS to automatically quit after executing supplied command (used with -c)

収束発散

hdivg(ua, va)

2022 令和4年 6月22日

grads -blc test1.gs
上は、動作ok.図が作成される。

crontab -e

/opt/local/bin/grads -d X11 -blc /Users/********/grib2/test1.gs

/bin/sh: /opt/local/bin/grads/grads: Not a directory

Running in Batch mode
GX Package Error: Could not find a record for the printing plug-in named “Cairo”
* The environment variable GAUDPT has not been set
* Unable to open the default User Defined Plug-in Table: /usr/local/lib/grads/udpt
Please read the documentation at http://cola.gmu.edu/grads/gadoc/plugins.html
GX Package Terminated

crontabに以下追加
GADDIR=/usr/local/lib/grads-2.2.1/suppdata
GASCRP=/usr/local/lib/grads-2.2.1/scripts
GASHP=/usr/local/lib/grads-2.2.1/suppdata
GAUDPT=/usr/local/lib/grads-2.2.1/suppdata

Running in Batch mode
Open Error: Can’t open description file
Open Error: Can’t open description file

/bin/zsh

shelを変更し、動作確認
SHELL=/bin/sh

以下ふたつのファイルが無いとのgrads手動でのメッセージ
/usr/local/lib/へコピー
/usr/local/lib/grads/hires
/usr/local/lib/grads/font0.dat

/bin/shでの手動実行ok.

/opt/local/bin/grads -d X11

Open Error: Can’t open description file
Open Error: Can’t open description file

Open Error: Can’t open binary data file
File name = output_p85_u.bin
Open Error: Can’t open binary data file
File name = output_p85_v.bin

crontab
PATH=/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/Apple/usr/bin
GADDIR=/usr/local/lib/grads-2.2.1/suppdata
GASCRP=/usr/local/lib/grads-2.2.1/scripts
GASHP=/usr/local/lib/grads-2.2.1/suppdata
GAUDPT=/usr/local/lib/grads-2.2.1/suppdata
10 16 * * * /opt/local/bin/grads -d X11 -blc /Users/*******/grib2/test1.gs

test1.gs
# コメント
‘open /Users/*******/grib2/U850.ctl’
‘open /Users/*******/grib2/V850.ctl’
‘set mpdset hires’
#’set gxout vector’
‘set cthick 3’
‘d skip(a.1,10,10);a.2′
#’d hdivg(a.1,a.2)’
‘gxprint out.png’

U850.ctl
DSET /usr/local/lib/grads/output_p85_u.bin
options big_endian
UNDEF 9.999E+20
XDEF 241 LINEAR 120.0 0.1250
YDEF 253 LINEAR 22.4 0.1000
ZDEF 1 LEVELS 1000
TDEF 1 LINEAR 00z01jan2014 3hr
vars 1
A 0 99 output
endvars

crontabの書式
行頭に「#」が記載された行は、コメントになります。

$ echo $SHELL

使用するターミナルのシェルを変更する
$ chsh -s /bin/zsh

【cron】定期的に処理を行う【MacOS】【Linux】

Pythonによるスクレイピング&機械学習 開発テクニック


試行錯誤の結果。/bin/shでの実行 ok. cron ok.全て絶対パスとする。ctl gs crontab内


必須
/usr/local/lib/
内に
libgmp.10.dylib関連を置く。

/usr/local/lib/grads/
内に
font
hires
udptを置く。

#は、不要
#PATH=/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/Apple/usr/bin
#GADDIR=/usr/local/lib/grads-2.2.1/suppdata
#GASCRP=/usr/local/lib/grads-2.2.1/scripts
#GASHP=/usr/local/lib/grads-2.2.1/suppdata
#GAUDPT=/usr/local/lib/grads-2.2.1/suppdata
50 18 * * * /opt/local/bin/grads -d X11 -blc /Users/*******/grib2/test1.gs

***.ctlファイルが読めない(パス設定が不十分)
Open Error: Can’t open description file

***.ctlの中のフィイルのパスが不十分
Open Error: Can’t open binary data file
File name = output_p85_u.bin

2022 令和4年 6月23日

自動ダウンロード 日付取得 シェルファイルから・・・

Z__C_RJTD_20220622180000_MSM_GPV_Rjp_L-pall_FH00-15_grib2.bin

2022 06 22 18 00 00

http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/2022/06/22/

touch test_`date +%Y%m%d`.txt

now=’date -u +%H’

echo $((now/3*3))

echo $((now-(now/3*3)))

もし、0だったから ひとつ前の時間でおkか
1、2だったら二つ前でおおkか


2022 令和4年 6月24日

shell file(script.sh)

utcで全て考える。
取得した時刻を3で割る・・・0,1,2,3,・・・次に3を掛ける。0,3,6,9・・・となる
echo $((now/3*3))
0の場合は21、その他は、−3(入電の遅れを3時間として)する。

if [ 20 -gt 30 ]; then
echo “Over 30”
else
echo “Under 30”
fi

chmod +x ./script.sh

2022 06 22 18 00 00

%Y%m%d
now=’date -u +%H’


y=`date -u +%Y`
m=`date -u +%m`
d=`date -u +%d`
ymd=`date -u +%Y%m%d`
hour=`date -u +%H`
#hour=15
#echo $((hour/3*3))
if [ $((hour/3*3)) -eq 0 ]; then
# 0時の場合
echo “21”
ymdt=$ymd’21’
echo $ymdt
else
# 一桁の場合
echo $(((hour/3*3)-3-3))
if [ $(((hour/3*3)-3-3)) -le 9 ]; then
echo ‘less’
ymdt=$ymd’0’$(((hour/3*3)-3-3))
echo $ymdt
else
echo ‘not less’
#ymdt=$ymd$(((hour/3*3)-3))
ymdt=$ymd$(((hour/3*3)-3-3))
echo $ymdt
echo ‘http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/’$y/$m/$d/’Z__C_RJTD_’$ymdt’0000_MSM_GPV_Rjp_L-pall_FH18-33_grib2.bin’
echo ‘Z__C_RJTD_20220624150000_MSM_GPV_Rjp_L-pall_FH18-33_grib2.bin’
#http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/2022/06/24/
fi
#ymdt=$ymd-$(((hour/3*3)-3))
#echo $ymdt
fi
echo ‘hellow’


2022 令和4年 6月25日(土曜日)

シェル版からunixフィルター版での考察
curl

curl コマンド 使い方メモ

Index of /arch/jmadata/data/gpv/original/2022/06/25

まずダウンロード 以下ふたつとも動作(出力ファイル名指定か無しか)
curl -O ‘http://office70.sakura.ne.jp/noimage.png’
curl -o noimage1.png http://office70.sakura.ne.jp/noimage.png
MSMダウンロード ok!!
curl -O http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/2022/06/24/Z__C_RJTD_20220624090000_MSM_GPV_Rjp_L-pall_FH00-15_grib2.bin

ダウンロード先の日付フォルダの作成時刻
ディレクトリ作成時刻 25 2022-06-25 13:46

年月日の階層フォルダから最新のファイル名を取得する。
① curlで全行出力し、grepで該当行のみ抽出
② tailで最後の行抽出
③ grepで、ファイル名のみ抽出
curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/2022/06/25/ | grep ‘.*MSM_GPV_Rjp_L-pall_FH00-15*’ | tail -1 | grep -o ‘Z.*bin*”‘

2022 令和4年 6月26日(日曜日)

最新の年・月・日を日付の階層フォルダから抽出すること。(本日の課題)
数字の桁数マッチでまず試行か

西暦
① curlで全行出力し、grepでetcを除く行のみ抽出
② tailで最後の4行抽出
③ grepで、西暦のみ抽出、tailにて最後一行
curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/ | grep -v etc | tail -4 | grep -o ’20[0-9][0-9]’ | tail -1


curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/2022/| tail -4 | grep -o “>'[0-9][0-9]’
curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/2022/| tail -4 | grep -o ‘\”[0-9][0-9]’ | grep -o [0-9][0-9]


curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/2022/06/ | tail -4 | grep -o ‘\”[0-9][0-9]’ | grep -o [0-9][0-9]

downloadpath=`curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/$year/$month/$day/ | grep ‘.*MSM_GPV_Rjp_L-pall_FH00-15*’ | tail -1 | grep -o ‘Z.*bin*”‘ | grep -o ‘Z.*bin*’`


2022 令和4年 6月27日(月曜日)


以下動作おk。(download.sh )

# 年
year=`curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/ | grep -v etc | tail -4 | grep -o ’20[0-9][0-9]’ | tail -1`
# 月
month=`curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/2022/| tail -4 | grep -o ‘\”[0-9][0-9]’ | grep -o [0-9][0-9]`
# 日
day=`curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/2022/06/ | tail -4 | grep -o ‘\”[0-9][0-9]’ | grep -o [0-9][0-9]`
echo $year$month$day
# curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/2022/06/25/
# 20220625
#curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/$year/$month/$day/
downloadpath=`curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/$year/$month/$day/ | grep ‘.*MSM_GPV_Rjp_L-pall_FH00-15*’ | tail -1 | grep -o ‘Z.*bin*”‘ | grep -o ‘Z.*bin*’`
# 表示
echo http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/$year/$month/$day/$downloadpath
curl -o /Users/********/grib2/downloaddata.bin http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/$year/$month/$day/$downloadpath


/home/office70/tmp

% which curl
/usr/local/bin/curl

% which grep
/usr/bin/grep

% which bash
/usr/local/bin/bash

/usr/local/bin/bash /home/{user name}/scripts/test.sh

Welcome to FreeBSD!

% pwd
/home/office70

% pwd

/home/office70/downloads

/usr/local/bin/bash ./download.sh

/usr/local/bin/bash ./download.sh

/usr/local/bin/bash /home/office70/download.sh

Welcome to FreeBSD!

% which gcc
/usr/bin/gcc
% which fortran
fortran: Command not found.
% which gmake
/usr/local/bin/gmake


2022 令和4年 6月28日(火曜日)


実機でのcron自動ダウンロード動作 次は、サーバ版(FreeBSD 9.1-RELEASE-p24)へ移行

wgrib2には、gfortran必要!!

GNUソフトウェア

さくらレンタルサーバーにgcc、Python3、numpy、scipy、scikit-learn、gensimをインストールする

Index of /wd51we/wgrib2

https://gmplib.org/download/gmp/gmp-6.2.1.tar.lz

https://gmplib.org/download/misc/gmpbench-0.2.tar.bz2

checking for suitable m4… configure: error: No usable m4 in $PATH or /usr/5bin (see config.log for reasons).

Index of /gnu/gmp

バージョンを5に変更して再試行。。。。OK。
gmp-5.1.3.tar.gz


mpfr-3.1.5.tar.gz

configure: error: gmp.h can’t be found, or is unusable.

gmp.h
% pwd
/home/office70/tmp/gmp-5.1.3

gmp.h
% pwd
/home/office70/local/include
% exit
logout

configure: error: libgmp not found or uses a different ABI (including static vs shared).
Please read the INSTALL file — see “In case of problem”.

/home/office70/local/lib
% ls
libgmp.a libgmp.la libgmp.so libgmp.so.11

–with-gmp-lib=/home/office70/local/lib
添付のINSTALLを読むと・・・

./configure prefix=$HOME/local –with-gmp-lib=/home/office70/local/lib

wget https://ftp.gnu.org/gnu/mpc/mpc-1.0.2.tar.gz
tar xf mpc-1.0.2.tar.gz
./configure prefix=$HOME/local
make
make install

gmp-5.1.3.tar.xz
mpfr-3.1.5.tar.xz
mpc-1.0.2.tar.gz
上のみっつ、以下の通りインストール完了!!
gmp-5.1.3.tar.gz
mpfr-3.1.5.tar.gz
mpc-1.0.2.tar.gz

パッケージはgcc-6.4.0.tar.gz
明日は、いよいよGCC
Index of /gnu/gcc/gcc-6.4.0
FreeBSD 9.1-RELEASE-p24


2022 令和4年 6月29日(水曜日)


cd gcc-6.4.0
mkdir build
cd build
../configure –prefix=$HOME/local –enable-languages=c,c++,fortran –disable-bootstrap CFLAGS=”-I$HOME/local/include” CPPFLAGS=”-I$HOME/local/include” CXXFLAGS=”-I$HOME/local/include” LDFLAGS=”-L$HOME/local/lib” CFLAGS_FOR_TARGET=”-I$HOME/local/include” CPPFLAGS_FOR_TARGET=”-I$HOME/local/include” CXXFLAGS_FOR_TARGET=”-I$HOME/local/include” LDFLAGS_FOR_TARGET=”-L$HOME/local/lib”
make
make install

% makeの時点でエラー発生
make: fatal errors encountered — cannot continue

make-3.82.tar.gz
をダウンロードし、インストール。

binutils-2.29エラー発生 インストール不可
make: *** [install] Error 2

/home/office70/local/bin/make

新しくインストールしたmakeにて実行
/home/office70/local/bin/make

gccほかgfortranインストール完了!!


wgrib2

GRIB2形式データを処理するプログラムwgrib2(入門編)

wget https://www.ftp.cpc.ncep.noaa.gov/wd51we/wgrib2/wgrib2.tgz.v2.0.8

tar -zxvf wgrib2.tgz.v2.0.8
grib2(ディレクトリ)が作成される。

$ setenv CC gcc
$ setenv FC gfortran

Vi .cshrc編集 以下追加
setenv CC /home/office70/local/bin/gcc
setenv FC /home/office70/local/bin/gfortran

Makeすると、wgrib2(ディレクトリ)が作成される。
cd wgrib2/
./wgrib2にて実行!!

/home/office70/tmp/grib2/wgrib2

# mv grib2 /usr/local

ここに存在する。。。wgrib2

/home/office70/local/grib2/wgrib2
/home/office70/local/grib2/wgrib2/wgrib2

そのほかに、grads(freebsd版)に同時インストールされたもあり。。。
/home/office70/tmp/wgrib

ここまで実施。

wgrib2インストール完了


grads

gxprint Cairo /usr/local/grads/lib/libgxpCairo.dylib

checking whether cairo’s image surface backend feature could be enabled… no (requires pixman-1 >= 0.30.0 http://cairographics.org/releases/)
configure: error: mandatory image surface backend feature could not be enabled

Cairo
—–
looking in other system locations
checking for CAIRO… configure: error: Package requirements (cairo) were not met:

Package cairo was not found in the pkg-config search path.
Perhaps you should add the directory containing `cairo.pc
to the PKG_CONFIG_PATH environment variable
Package ‘cairo’, required by ‘world’, not found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables CAIRO_CFLAGS
and CAIRO_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

gxdisplay Cairo /usr/local/grads/lib/libgxdCairo.dylib
gxdisplay X11 /usr/local/grads/lib/libgxdX11.dylib
gxdisplay gxdummy /usr/local/grads/lib/libgxdummy.dylib
gxprint Cairo /usr/local/grads/lib/libgxpCairo.dylib
gxprint GD /usr/local/grads/lib/libgxpGD.dylib
gxprint gxdummy /usr/local/grads/lib/libgxdummy.dylib


2022 令和4年 6月30日(木曜日)


格子の読み方(ビットの説明)

GRIB2形式データを処理するプログラムwgrib2(入門編)

1.1:0:d=2017120500:PRMSL:mean sea level:anl:
1.2:0:d=2017120500:PRES:surface:anl:
1.3:0:d=2017120500:UGRD:10 m above ground:anl:
1.4:0:d=2017120500:VGRD:10 m above ground:anl:
1.5:0:d=2017120500:TMP:1.5 m above ground:anl:
1.6:0:d=2017120500:RH:1.5 m above ground:anl:
1.7:0:d=2017120500:LCDC:surface:anl:
1.8:0:d=2017120500:MCDC:surface:anl:
1.9:0:d=2017120500:HCDC:surface:anl:
1.10:0:d=2017120500:TCDC:surface:anl:

1.11:0:d=2017120500:PRMSL:mean sea level:1 hour fcst:
1.12:0:d=2017120500:PRES:surface:1 hour fcst:
1.13:0:d=2017120500:UGRD:10 m above ground:1 hour fcst:
1.14:0:d=2017120500:VGRD:10 m above ground:1 hour fcst:
1.15:0:d=2017120500:TMP:1.5 m above ground:1 hour fcst:
1.16:0:d=2017120500:RH:1.5 m above ground:1 hour fcst:
1.17:0:d=2017120500:LCDC:surface:1 hour fcst:
1.18:0:d=2017120500:MCDC:surface:1 hour fcst:
1.19:0:d=2017120500:HCDC:surface:1 hour fcst:
1.20:0:d=2017120500:TCDC:surface:1 hour fcst:
1.21:0:d=2017120500:APCP:surface:0-1 hour acc fcst:
1.22:0:d=2017120500:DSWRF:surface:0-1 hour ave fcst:

記号 物理量
PRMSL 海面更生気圧
PRES 地上気圧
UGRD 東西風速
VGRD 南北風速
TMP 気温
RH 相対湿度
LCDC 下層雲量
MCDC 中層雲量
HCDC 上層雲量
TCDC 全雲量
APCP 降水量
DSWRF 日射量

2022 令和4年 7月1日(金曜日)


平成18年3月からの数値予報モデルGPV等の変更について

PHP版wgribソース解析

PHP版wgribについてエトセトラ
第4節のパラメータを表示し、取り出すデータを絞り込んで(要素、予報時刻、気圧面)表示完了。
表示されるデータ(高度・温度などから)もOK!!
plotNum = 60973=253×241で合致。
保存すれば、gradsにて読み込み可能か。


2022 令和4年 7月2日(土曜日)


PHPファイル gradデータ描画テストは、以下エラー発生
Low Level I/O Error: Read error on data file
Data file name = convertphpout.bin
Error reading 1924 bytes at location 228956

そのままintでfwriteしても、上のように不可。多分文字列として書かれてる模様。。
更に、decbin何ちゃらで書いても、文字列とて、書かれる模様にて、不可。

しばらくは、gradsのサイト公開まちか。
使い道として、以下のプロファイラ利用か、こちらは、BUFR報形式。

配信資料に関する技術情報(気象編) 第97号 – ウィンドプロファイラ観測値の配信について –


2022 令和4年 7月3日(日曜日)


$num = ($numR + $int * $exp) / $base;
$f = floatval($num);
//f float (サイズおよび表現はマシン依存 確認すると4byte)
//d ❌double (サイズおよび表現はマシン依存)
//l ❌signed long (常に 32 ビット、マシンのバイトオーダー)
$ff = pack(“f*”,$f);
echo $f.”,”;
fwrite($wfh,$ff);

最終的にフロートして、パックして・・・
上でらしきものが表示される。

60973 * 4byte = 243892
gradsメッセージ
Contouring: -2e+18 to 2e+18 interval 5e+17


PHP pack() Function
pack

Converting GRIB to CSV or to binary data
浮動小数点数のバイナリ表現を10進数表記へ変換してみる

GRIB2 ファイルを自力でパースしてみた [python]

気象庁のウィンドプロファイラのデータを読む (Python による試作、暫定メモ)

Cairoの依存ライブラリ


2022 令和4年 7月4日(月曜日)


gradsは、引続きダウンロード出来ず。

今後として、

① grads:cairoのインストールから再開・・・
② binデータを読むことは出来るので、利用として、レーダーやプロファイラ(BUFR報)解析を進める。


grads-2.2.2
FreeBSD!

looking in other system locations
checking for CAIRO… configure: error: Package requirements (cairo) were not met:

Package cairo was not found in the pkg-config search path.
Perhaps you should add the directory containing `cairo.pc’
to the PKG_CONFIG_PATH environment variable
Package ‘cairo’, required by ‘world’, not found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables CAIRO_CFLAGS
and CAIRO_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.


Cairo
configure: error: mandatory image surface backend feature could not be enabled

配信資料に関する技術情報(気象編) 第97号 – ウィンドプロファイラ観測値の配信について –
配信資料に関する技術情報第 532 号

過去データの自動ダウンロード方法について

神サイトか
MacにGrADSをインストールする
↑古いバージョンを使うことにして、ここから2.0.2

重要!! 以下サイトでOKに思われる。
gradsのダウンロードとインストール

http siteは、不可だがftpサイトでOK。本日やっと気付く。。。

ftpサイト:
ftp://cola.gmu.edu/grads/

ftp://cola.gmu.edu/grads/2.0/grads-2.0.2-src.tar.gz

ftp://cola.gmu.edu/grads/1.8/GrADS1.8SL11.FreeBSD4.tar.Z

Welcome to FreeBSD!

% which pkg_add

/usr/sbin/pkg_add

grads-2.0.2-src.tar.gzソースコンパイル makeでX11エラー X11もインストール困難
gxX.c:13:22: fatal error: X11/Xlib.h: No such file or directory
#include <X11/Xlib.h>


レンタルfreebsdサーバーで、grads稼働!!!!

freebsdバージョン(bin)
wget ftp://cola.gmu.edu/grads/1.8/GrADS1.8SL11.FreeBSD4.tar.Z

tar xfvZ ファイル.tar.Z

実行!!
./gradsdods

Error in GXSTRT: Unable to connect to X server

/opt/local/bin/grads -d X11 -blc /Users/naokiabe/grib2/test1.gs

バッチモード起動
./gradsdods -b
Running in Batch mode

💚GrADSのTips 東北大学

gradsのダウンロードとインストール


2022 令和4年 7月5日(火曜日)


10 8 * * * /opt/local/bin/grads -d X11 -blc /Users/naokiabe/grib2/test1.gs

test1.gs
# コメント
‘open /Users/********/grib2/U850.ctl’
‘open /Users/********/grib2/V850.ctl’
‘set mpdset hires’
#’set gxout vector’
‘set cthick 3’
‘d skip(a.1,10,10);a.2′
#’d hdivg(a.1,a.2)’
‘gxprint /Users/*******/grib2/out.png’

replaces the print, gxps, gxeps, and printim commands.

データ
/home/office70/downloadsdownloaddata.bin(50522465)

gradsコマンド
/home/office70/tmp/gradsdods -b

.gsファイルctlファイルが必要。

ctlファイル
DSET /usr/local/lib/grads/output_p85_u.bin
options big_endian
UNDEF 9.999E+20
XDEF 241 LINEAR 120.0 0.1250
YDEF 253 LINEAR 22.4 0.1000
ZDEF 1 LEVELS 1000
TDEF 1 LINEAR 00z01jan2014 3hr
vars 1
A 0 99 output
endvars

抜き出し!!

wgrib2 Z__C_RJTD_20220528120000_MSM_GPV_Rjp_L-pall_FH00-15_grib2.bin | grep “TMP:850” | grep “mb:15” | wgrib2 -i -no_header Z__C_RJTD_20220528120000_MSM_GPV_Rjp_L-pall_FH00-15_grib2.bin -no_append -ieee output_p.bin
1.494:0:d=2022052812:TMP:850 mb:15 hour fcst:
1.492:0:d=2022052812:UGRD:850 mb:15 hour fcst:
1.493:0:d=2022052812:VGRD:850 mb:15 hour fcst:

243892  6 20 16:04 output_p85_u.bin

まずは、サーバでwgrib2による抜き出しから始めよう。。。。

/home/office70/local/grib2/wgrib2/wgrib2 /home/office70/downloads/downloaddata.bin

-grid

/home/office70/local/grib2/wgrib2/wgrib2 /home/office70/downloads/downloaddata.bin | grep “mb:15”

/home/office70/local/grib2/wgrib2/wgrib2 /home/office70/downloads/downloaddata.bin | grep “TMP:850” | grep “mb:15”

——————–>>>>>>>>>>>>>>>>> 1.494:0:d=2022070421:TMP:850 mb:15 hour fcst:

/home/office70/local/grib2/wgrib2/wgrib2 /home/office70/downloads/downloaddata.bin | grep “TMP:850” | grep “mb:15” | /home/office70/local/grib2/wgrib2/wgrib2 -i -no_header /home/office70/downloads/downloaddata.bin -no_append -ieee output_p.bin

———————>>>>>>>>1.494:0:d=2022070421:TMP:850 mb:15 hour fcst:

243892 Jul 5 14:26 output_p.bin

open grads.ctl
set mpdset hires
set t 1
set gxout grfill
d tmp

grads -blc sample.gs

/home/office70/tmp/gradsdods -blc grads.gs

ga-> print
Metafile not currently open

Error opening stroke character data set
Data set names = /usr/local/lib/grads/font0.dat ; font0.dat

font0.dat以下にあり。
export GADDIR=/usr/local/lib/grads-2.2.1/suppdata
/usr/local/lib/grads-2.2.1/suppdata

/bin/csh
Vi .cshrc編集 以下追加
setenv CC /home/office70/local/bin/gcc
setenv FC /home/office70/local/bin/gfortran

grads本家サイト更に、tutorial

Grid Analysis and Display System (GrADS)
Tutorial (En Español)


2022 令和4年 7月6日(水曜日)


/home/office70/tmp/grads-2.2.2/data
font0.datなどあり↑
/home/office70/tmp/grads-2.0.2/data
font0.datなどあり↑

font0 Error対処

/bin/csh
Vi .cshrc編集 以下追加
setenv GADDIR /home/office70/tmp/grads-2.0.2/data

setenv GASCRP /home/office70/tmp/grads-2.0.2/scripts

/home/office70/tmp/gradsdods -b

‘open /home/office70/scripts/grads.ctl’
‘set mpdset hires’
‘set t 1’
‘set gxout grfill’
‘d A’
‘enable print ./out.gx’
‘print’
‘disable print’

/home/office70/tmp/gradsdods -b

open /home/office70/scripts/grads.ctl
set t 1

set rgb 50 200 200 200

set ccolor 2

set gxout grfill

set gxout contour

d A
enable print ./out.gx

printimにて解決!!

print
printim test.gif

disable print

/home/office70/tmp/gxps –i out.gx –o test.ps

MAC
/usr/local/lib/grads-2.2.1/scripts

open /home/office70/scripts/grads.ctl
set t 1
set ccolor 2
d A
printim test.gif

printim /home/office70/www/office70/wp-content/themes/generic-child/test.gif

Running in Batch mode
ga-> run cbar
Cannot plot color bar: No shading information

💚関連リンク

GrADSのTips
GrADS の使い方
epsファイルで図を保存また単にgifやjpgファイルを作る場合
Controlling Colors in GrADS
GrADS Commands Sorted by Attribute

💚IT memo/GrADS memo

Top / GrADS / script / xcbar.gs

/home/office70/www/office70/wp-content/themes/generic-child

/home/office70/tmp/gradsdods -b

open /home/office70/scripts/grads.ctl
set t 1
set gxout grfill
d A
printim /home/office70/www/office70/wp-content/themes/generic-child/test.gif

set rgb 50 200 200 200

set ccolor 2

set gxout grfill

set gxout contour

d A
enable print ./out.gx

printimにて解決!!

print
printim test.gif

disable print

/home/office70/tmp/gxps –i out.gx –o test.ps

MAC
/usr/local/lib/grads-2.2.1/scripts

/home/office70/tmp/gradsdods -b

open /home/office70/scripts/grads.ctl
set t 1
set display color white
set gxout grfill
d A
printim /home/office70/www/office70/images/test.gif

printim test.gif
printim /home/office70/www/office70/wp-content/themes/generic-child/test.gif

APCP 降水量

505×481

open HECB88.ctl
set lat 25 50
set lon 120 150
enable print tmo
set gxout shaded
set clevs 0.5 5 10 20 30 50 80 120 200
set ccols 15 5 4 3 7 8 6 2 9
set csmooth on
d apcpsfc.1


2022 令和4年 7月7日(木曜日)


/usr/local/bin/bash /home/office70/scripts/download.sh

% less download.sh
# YEAR
year=`/usr/local/bin/curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/ | grep -v etc | tail -4 | grep -o ’20[0-9][0-9]’ | tail -1`
# MONTH
month=`/usr/local/bin/curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/$year/ | tail -4 | grep -o ‘\”[0-9][0-9]’ | grep -o [0-9][0-9]`
# DAY
day=`/usr/local/bin/curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/$year/$month/ | tail -4 | grep -o ‘\”[0-9][0-9]’ | grep -o [0-9][0-9]`
echo $year$month$day
# curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/2022/06/25/
# 20220625
#curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/$year/$month/$day/
# MSM_GPV_Rjp_Lsurf_FH00-15
# MSM_GPV_Rjp_L-pall_FH00-15
downloadpath=`/usr/local/bin/curl http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/$year/$month/$day/ | grep ‘.*MSM_GPV_Rjp_L-pall_FH00-15*’ | tail -1 | grep -o ‘Z.*bin*”‘ | grep -o ‘Z.*bin*’`
#
echo http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/$year/$month/$day/$downloadpath
/usr/local/bin/curl -o /home/office70/downloads/downloaddata.bin http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/$year/$month/$day/$downloadpath

download_L-pall.sh

download_Lsurf.sh


2022 令和4年 7月8日(金曜日)


MAC 再起動した時・・・
source ~/.zshrc

固定ページ gradsにこの間の詳細記述


2022 令和4年 7月9日(土曜日)

レンタルfreebsdサーバー crontab wgrib to bin grads 画像保存完了!!


2022 令和4年 7月10日(日曜日)

公開情報/GrADS/GrADSのTips
GrADSスクリプトライブラリ
IT memo/GrADS memo
Grads Tips(while含む・・・)
GrADSでアニメーションを作る
Grads Tips
GrADS Scripting Language


2022 令和4年 7月11日(月曜日)

2つ以上の単語を除外したい時

# grep -v “hoge” | grep -v “fuga”

an1を除外。。。3時間ごとのcrontabによる表示ok…


2022 令和4年 7月11日(月曜日)

日時等表示(MSM_Lsurf_disp.php)完了!

今後の課題:
図内タイトル等表示調整 気圧面表示(項目検討) cronによる取得時間について検討(基MSMに合わせて3時間ごとか)cronの設定について調査要。

Z__C_RJTD_20220711000000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin 2022-07-11 11:15 66M
Z__C_RJTD_20220711030000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin 2022-07-11 14:15 66M
Z__C_RJTD_20220711060000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin 2022-07-11 17:15 66M
Z__C_RJTD_20220711090000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin 2022-07-11 20:15 66M
Z__C_RJTD_20220711120000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin 2022-07-11 23:15 66M
Z__C_RJTD_20220711150000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin 2022-07-12 02:15 66M
Z__C_RJTD_20220711180000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin 2022-07-12 05:15 66M
Z__C_RJTD_20220711210000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin 2022-07-12 08:15 66M

02:15
05:15
08:15
11:15
14:15
17:15
20:15
23:15

2,5,8,11,14,17,20,23

30分 35分 40分 45分


2022 令和4年 7月13日(火曜日)

img php出力に変更、alt属性追加。


2022 令和4年 7月15日(金曜日)

33時間予報までの追加作業!!

MSM_GPV_Rjp_Lsurf_FH16-33

Lsurf_1とLsurf_2は、tdefが異なる。
tdef 15 linear 00Z26DEC2019 1hr
tdef 18 linear 00Z26DEC2019 1hr


2022 令和4年 7月16・17日(土・日曜日)

CTLファイルほか有用

GrADS MSM地表面データ 取得&描画 バイナリファイル編
GrADS MSM気圧面データ 取得&描画 バイナリファイル編

Top / GrADS / script / dshade.gs

新たな発見!!ZDEFの部分(個々に抜き出す必要無く、一括でOK)

ダウンロード

curl -O http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/2022/06/24/Z__C_RJTD_20220624090000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin
curl -O http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/original/2022/06/24/Z__C_RJTD_20220624090000_MSM_GPV_Rjp_L-pall_FH00-15_grib2.bin

anl除外

wgrib2 ./downloaddata_Lsurf_1.bin | grep -v “anl:” | wgrib2 -i ./downloaddata_Lsurf_1.bin -no_header -bin output_Lsurf_1.bin

anl除外無し

wgrib2 ./downloaddata_Lsurf_2.bin -no_header -bin output_Lsurf_2.bin

curl で URL 叩いて、ファイル名を指定してダウンロードしたいときは 小文字 の o。
大文字 Oはそのままダウンロード。

wgrib2 ./downloaddata_Lsurf_1.bin | grep -v “anl:” | wgrib2 -i ./downloaddata_Lsurf_1.bin -no_header -bin output_Lsurf_1.bin

grads_Lsurf_1.ctl

DSET output_Lsurf_1.bin
UNDEF 999999999E+20
XDEF 481 LINEAR 120 0.0625
YDEF 505 LINEAR 22.4 0.05
ZDEF 1 LEVELS 1
TDEF 15 LINEAR 00z01jan0000 1hr
VARS 12
psea 1 99 sp
sp 1 99 u
u 1 99 u
v 1 99 v
temp 1 99 temp
rh 1 99 rh
r1h 1 99 prec
ncld_upper 1 99 ncld_upper
ncld_mid 1 99 ncld_mid
ncld_low 1 99 ncld_low
clda 1 99 clda
dswrf 1 99 dswrf
ENDVARS

降水量と風と相対湿度 grads vector


2022 令和4年 7月18〜19日(月火曜日)

15と33予想・・・合体して動作おk
run_prmsl_acpc_1533.gs

cbarで迷うが、置き場所の問題。。。。描画(dコマンド)のあとに追記することでおk。

cbar.gs, cbarn.gs, cbarc.gs

ga-> cbar         //長方形
ga-> cbarn        //基本的に上と同じ、但し端が三角
ga-> cbarc        //隅に小さく

スクリプトを実行するには GrADsのrunコマンドを使います。

run ファイル名 [引数]
ただし引数は省略可能です。
GrADSスクリプトのTips

Controlling Colors in GrADS

Top / GrADS / script / color.gs

A First Course in GrADS GrADSスクリプトで引数を使う


2022 令和4年 7月20日(水曜日)

pythonで格子点データを扱う(入門編)

気圧面

本日より、気圧面での構築移行。。
結果として、複数気圧面をwgrib2で抜き出すとどうもうまくいかない。
とりあえず、単一の気圧面のみ抜き出しておk。

上記後、試行錯誤しておkとなる。今のところ、同一時刻内に複数高度は不可のよう。
変数を高度分追加して、おkとなる。

相当温位

相当温位計算(grads)
Script: theta.gs; Defines potential and equlivalent potential temperature given temperature and moisture inputs
GrADS-aholic!

GrADS Code Error

格子点データの解析 850hPa 相当温位、風解析図

GrADSコマンドのメモ(lev)


2022 令和4年 7月21日(木曜日)

相当温位図(850hPa)表示・図の作成完了(15まで6画面 33は途上)


2022 令和4年 7月22日(金曜日)

相当温位図(850hPa)表示・図の作成完了(33まで完了)

850hPs風

850hPs気温

700hPa

run_L-pall_w70_1533.gs)(表示までループは未だ)

850hPs 収束発散 hPa 流線 streamなどの表示エトセトラ


2022 令和4年 7月23日(金曜日)

run_L-pall_w70_1533.gs)(ループ完了!!)

500hPa

850から500までまとめて抜き出し
ctl変更 3変数
wgrib2 ./downloaddata_L-pall_15.bin | grep -e “850 mb:” -e “700 mb:” -e “500 mb:” | wgrib2 -i ./downloaddata_L-pall_15.bin -no_header -bin output_L-pall_15.bin

500hPa高度 表示ok ループはこれから

SCRIPTS

試行錯誤スクリプト 所在
/Users/naokiabe/Desktop/sakura-tempA/scripts/summary_grib_grads_ds.gs

表示用PHP 所在
www/office70/wp-content/themes/generic-child/MSM_Lsurf_disp.php

sakura-tempA
scripts2/grib2tobin_PRMSL_APCP.sh

ATOM .ftpconfig
.ftpconfig(/Users/naokiabe/Desktop/sakura-tempA/.ftpconfig)

GrADSで4次元時空間データ

GrADSで4次元時空間データの2次元断面を見る
GrADSの使いかた


2022 令和4年 7月26日(火曜日)

Lsurf、L-pall共に、実機からサーバへへ移行!!(cronによる画像作成まで完了)

気圧・降水量&風(地上)まで表示完了。


2022 令和4年 7月27日(水曜日)

地上の残り分とL-pallの全てについて、web表示完了。

naokiabe@NaokinoMacBook-Pro L-pall % wgrib2 -grid downloaddata_L-pall_15.bin
1.1:0:grid_template=0:winds(N/S):
lat-lon grid:(241 x 253) units 1e-06 input WE:NS output WE:SN res 48
lat 47.600000 to 22.400000 by 0.100000
lon 120.000000 to 150.000000 by 0.125000 #points=60973


2022 令和4年 7月28日(木曜日)

断面図関連

gads zあるいは、levelsがうまく働かない!!!
ほぼ、1日試行錯誤して、解決か!!
以下を、よーくみること。

aaaaaaaaaaa

これは、変数に含まれる垂直レベルの数を指定する整数です。 levsは、ZDEFステートメントで指定されているznumを超えることはできません。 levsが0の場合、変数はどの垂直レベルにも対応していません。 表面変数(海面気圧など)のlevs値は0です。

DTYPEステーションまたはbufrの場合、サーフェス変数のlevs値は0で、上空変数のlevs値は1です(bufrデータのこのルールの例外:複製されたサーフェス変数にはlevs値2が与えられます)。

サンプルのctlファイル(本家)VARSの個々の数に注目!!

Components of a GrADS Data Descriptor File

DSET ^model.dat
OPTIONS little_endian
UNDEF -2.56E33
TITLE 5 Days of Sample Model Output
XDEF 72 LINEAR 0.0 5.0
YDEF 46 LINEAR -90.0 4.0
ZDEF 7 LEVELS 1000 850 700 500 300 200 100
TDEF 5 LINEAR 02JAN1987 1DY
VARS 8
ps 0 99 Surface Pressure
u 7 99 U Winds
v 7 99 V Winds
hgt 7 99 Geopotential Heights
tair 7 99 Air Temperature
q 5 99 Specific Humidity
tsfc 0 99 Surface Temperature
p 0 99 Precipitation
ENDVAR


2022 令和4年 7月29日(金曜日)

MSM プロダクト定義

山口県エリアでの表示(まずは気温から)表示用gsファイルまで完了

SSI(安定指数計算)サイト Showalter Index
Showalter Index

gxout=grid で表示される数値の大きさをかえる
Grads Tips

地図の色・スタイル・太さを設定する/自動設定する
公開情報/GrADS/GrADSのTips

目盛り
set zlog on


2022 令和4年 7月30日(土曜日)

断面図

鉛直軸を対数軸にする/解除する
set zlog on/off
公開情報/GrADS/GrADSのTips

お役立ちリンク集

Python3(良いチュートリアルや公式ドキュメントへのリンク)

名古屋大学

気象大気研究部 気象学研究室
お役立ちリンク集


2022 令和4年 7月31日(日曜日)

SSI表示・・・動作。あとは、実際に組み込み予定。評価はそのときまで保留。

ショワルター・露店・湿度 描画 OK
#’d showalter’
‘d dewtemp’
#’d rh.2′

鉛直断面図
経度X度における東西鉛直断面図
東西平均値の南北断面図
鉛直プロファイルの時間変化
GrADS-Note


2022 令和4年 8月1日(月曜日)

SSI

index showalter


2022 令和4年 8月2日(火曜日)

GrADSについてのメモ(いろいろと有用)

SSI(NEW)表示から見てこちらの方が正しいように思われる。1533まで完了。

今後の表示として、露点や湿度(地上か1000mb)


2022 令和4年 8月3日(水曜日)

500hPa渦度及び1000hPaの露点表示完了。

Mac の Finder で 隠しファイル を表示するためのショートカットは command + shift + . です。

拡大・縮小
拡大・・・shift command +
縮小・・・command –

ATOM
TOGGLEを忘れないこと。。。

MACAIRにSSHとATOMセッティング完了!!


2022 令和4年 8月4日(木曜日)

wgrib2

MACBOOKAIR用 GCCがインストール出来ずに、コンパイル不可。以下によりバイナリインストールしてOKとなる。
Open Grid Analysis and Display System Files

wgrib2 v0.1.9.4 8/2011 Wesley Ebisuzaki, Reinoud Bokhorst, Jaakko Hyvätti, Kristian Nilssen, Karl Pfeiffer, Pablo Romero, Manfred Schwarb, Arlindo da Silva, Niklas Sondell, Sergey Varlamov

grads

古いバージョンのGrADSを使う2.0.2を入手してインストールし。
ftp://cola.gmu.edu/grads/2.0/

For macOS 10.9 or later XQuartz

grib付属のwgribのバージョン
Portable Grib decoder for NCEP/NCAR Reanalysis etc.
it slices, dices v1.8.1.2a (6-11) Wesley Ebisuzaki


2022 令和4年 8月5日(金曜日)

大雨データ ダウンロード!!(macbookpro air共)
air ストレージ整理</span
断面図
MSMエマグラム

将来的には、レスポンシブルにて綺麗にpng描画(web版)とapp版(アプリでの専用viewer)
w3schoopやjavascript版本読み。。。

How TO – Zoom on Hover

How TO – Zoom on Hover

HTML Responsive Web Design


2022 令和4年 8月6日(土曜日)

W3.CSS Tutorial

W3.CSS Tutorial
W3.CSSチュートリアル

チュートリアル!!