ファイル名の末尾 | 意味 |
GSM_GPV_Rjp_L-pall_FD0000-0312_grib2.bin | 全球数値予報モデルGPV / 日本領域 / 気圧面についてのデータ / 予報時間 |
MSM_GPV_Rjp_L-pall_FH00-15_grib2.bin | メソ数値予報モデルのGPV / 日本領域 / 気圧面についてのデータ / 予報時間 00〜15時間 |
※ 個人的にはLinuxを使うが、授業なので、Windows を使うことを前提にして書く。
install.packages("ncdf4")と入力する。
system("wgrib2 ダウンロードしたファイル.bin -netcdf 適当なファイル名.ncdf")いかにもそれっぽい表示(日付とか、データの変数名とかの表示)がされたら、変換が成功した証である。
library(ncdf4) nc <- nc_open("適当なファイル名.ncdf") print(nc)変数名(var) の一覧が表示されるので、その中から利用する変数を選ぶ。そのデータを読み込む。
gph1000 <- ncvar_get(nc, "HGT_1000mb") lon <- ncvar_get(nc, "longitude") lat <- ncvar_get(nc, "latitude") tim <- as.POSIXct(ncvar_get(nc, "time"),origin="1970-01-01",tz="Asia/Tokyo")
変数名 | 意味 | 単位 |
PRMSL_meansealevel | 海面気圧 | Pa |
PRES_surface | 現地気圧 | Pa |
UGRD_10maboveground | 10m での東西風 | m/s |
VGRD_10maboveground | 10m での南北風 | m/s |
TMP_1D5maboveground | 1.5m での気温 | K |
RH_1D5maboveground | 1.5m での相対湿度 | % |
LCDC_surface | 下層雲の被覆率 | % |
MCDC_surface | 中層雲の被覆率 | % |
HCDC_surface | 上層雲の被覆率 | % |
TCDC_surface | 全雲量 | % |
APCP_surface | 降水量 | kg/m^2 |
DSWRF_surface | 下向き短波放射フラックス | W/m^2 |
変数名 | 意味 | 単位 |
HGT_500mb | 500hPa ジオポテンシャル高度 | m |
UGRD_500mb | 500hPa 東向き風速 | m/s |
VGRD_500mb | 500hPa 北向き風速 | m/s |
TMP_500mb | 500hPa 気温 | K |
VVEL_500mb | 500hPa 鉛直速度 | Pa/s |
RH_500mb | 500hPa 相対湿度 | % |
filled.contour( lon, lat, gph1000[,,1] )
install.packages("devtools")次のコマンドを実行する。RStudio を起動するたびに1回行えば良い。
library(devtools) source_url("https://www2.obirin.ac.jp/moriat/OpenData/addmap.R")
filled.contour( lon, lat, gph1000[,,1], plot.axes={axis(1); axis(2); addmap()} )
plot( tim, gph1000[lon==140.125,lat==35.7,], type='b')
filled.contour( tim, lat, t(gph1000[lon==140.125,,]) )
sampledata <- 1:30 dim(sampledata) <- c(5,3,2) sampledata[,,1] sampledata[,,2]
str(sampledata) sampledata <- aperm(sampledata, c(1,3,2)) str(sampledata) sampledata[,1,] sampledata[,2,]
c(sampledata)
ncvar_gettheta <- function(nc){ levs <- c(1000, 975, 950, 925, 900, 850, 800, 700, 600, 500, 400, 300, 250, 200, 150, 100) lon <- ncvar_get(nc, "longitude") lat <- ncvar_get(nc, "latitude") tim <- as.POSIXct(ncvar_get(nc, "time"),origin="1970-01-01",tz="Asia/Tokyo") theta <- c() validlevs <- c() for( lev in levs ){ tmpdata <- c() try( tmpdata <- c(tmpdata, ncvar_get(nc,paste("TMP_",lev,"mb",sep=""))) ) if( length(tmpdata) != 0 ){ theta <- c( theta, c(tmpdata * (1000/lev)^(2/7))) validlevs <- c( validlevs, lev) } } dim(theta) <- c(length(lon), length(lat), length(tim), length(theta)/length(lon)/length(lat)/length(tim) ) theta <- aperm(theta, c(1,2,4,3)) return( list(lon=lon, lat=lat, levs=validlevs, tim=tim, theta=theta)) }次のようにしてこの関数を取り込める。
library(devtools) source_url("https://www2.obirin.ac.jp/moriat/OpenData/ncvar_gettheta.R")緯度高度断面の等値線図を描く。返り値がリストなので、$ をつけて各変数を参照する。
result <- ncvar_gettheta(nc) filled.contour( result$lat, -result$lev, result$theta[1,,,1]※ filled.contour では、x, y 座標の値は増えていく順(昇順)でなければならない。気圧レベルは下ほど値が大きいので、負号をつけて上下を逆転させている。
タイトル | Ci Nii | 論文 |
20kmメッシュ大規模アンサンブル実験を用いた北東日本における極端低温日の将来変化予測 | CiNii | ○ |
オホーツク海高気圧卓越時の北日本太平洋側における2タイプのヤマセと視程・雲底高度に関する統計解析 | CiNii | × |
温位座標解析による日本海で発生するバリアージェットの発生機構の解明 | CiNii | ○ |
全球気候モデルMIROC5によるヤマセ型気圧配置の再現性 | CiNii | ○ |
ヤマセ卓越時の北上盆地での南風の解析 | CiNii | ○ |
オホーツク海の霧と北海道のヤマセ | CiNii | |
ヤマセの性質とオホーツク海高気圧との関係 | CiNii | |
平成17年度共同利用研究集会要旨 冷夏猛暑に代表される夏季異常気象研究の統合--オホーツク海高気圧とヤマセ | CiNii | |
ヤマセの性質とオホーツク海高気圧との関係 | CiNii | |
オホーツク海の霧と北海道のヤマセ | CiNii | |
1993年夏季のヤマセ気流の気団変質 | CiNii | |
ヤマセに関連するオホーツク海高気圧の総観的特徴 | CiNii | |
オホーツク海高気圧と上空のブロッキングの時間発展 | CiNii | |
オホーツク海の霧と北海道のヤマセ | CiNii | |
北極海の海氷分布の変動とグローバルな天候の異変 | CiNii | |
1993年異常気象による冷害の調査研究 | CiNii | |
ヤマセの発現機構と予測に関する研究 | CiNii | |
中緯度の気象・気候に与える極気団の形成と活動に関する研究 | CiNii | |
A climatological study on the Okhotsk air mass during the typical Yamase period | CiNii | |
典型的なヤマセ時のオホーツク海気団の特性--1981年6月18〜21日の事例解析 | CiNii |