近未来予測に向けた アンサンブル摂動の開発

計算機セミナー
2008.12.12@神戸
はじめてのNCL
近本 喜光 (東大・気候システム)
本日の発表内容
1. NCLの実例
2. NCLのインストール
3. NCLのチュートリアル
4. プログラムソースの解説
5. いざ実践
1. NCLの実例
NCLでできること
• 絵を描く
• データ解析をする
特徴
• オブジェクト指向
• 多種類の統計解析が簡単にできる
• Freeで利用でき、ユーザー数が多い
欠点
• マニュアルがすべて英語
• 日本では、まだまだユーザーが少ない
NCLの実例: その1
BGM
LAF
観測
同化
CTL予測
LAF予測
BGM予測
p1
m1
NCLの実例: その2
ASSIM
GOOD
BAD
上段: SST, U_sfc, V_sfc における偏差 下段: 赤道域のTO,UO,WOにおける偏差
NCLを使った論文の紹介
• Chikamoto et al. 2007:
Evidence of Growing Bred Vector Associated with the Tropical
Intraseasonal Oscillation
Geophys. Res. Lett., Vol. 34, L04806, doi:10.1029/2006GL028450
• Chikamoto and Tanimoto 2006:
Air-sea Humidity Effects on the Generation of Tropical Atlantic
SST Anomalies during the ENSO Events
Geophys. Res. Lett., Vol. 33, L19702, doi:10.1029/2006GL02723
•
Chikamoto and Tanimoto 2005:
Role of specific humidity anomalies in Caribbean SST response
to ENSO
J. Meteor. Soc. Japan, Vol. 83, No. 6, pp.959--975
2. NCLのインストール
インストールの主な手順
1.
2.
3.
4.
5.
ESGにアカウント登録
NCLファイルをダウンロード
NCLファイルを展開
パスを通す
インストールできたか確認
NCLのホームページ
http://www.ncl.ucar.edu/
NCLのインストール手順
ESGの top page
NCLのコードを選択
自分のシステムに合ったNCLを選択
Vine Linux 4.2 の場合
(32bit, i686, gcc3.x)
NCLのインストール
$ rpm –qa | grep gcc
gccのバージョン
gcc-3.3.6-0vl7
$ mkdir ncl
$ cd ncl
$ tar zxvf ncl_ncarg-5.0.0-Linux_i686_gcc3.tar.gz
$ pwd
/home/chika44/soft/ncl
$ vi ~/.bashrc
export NCARG_ROOT=/home/chika44/soft/ncl
export PATH=${PATH}:${NCARG_ROOT}/bin
$ source ~/.bashrc
インストールできたか確認
$ ncl
Copyright (C) 1995-2007 - All Rights Reserved
University Corporation for Atmospheric Research
NCAR Command Language Version 5.0.0
The use of this software is governed by a License Agreement.
See http://www.ncl.ucar.edu/ for more details.
ncl 0>
こうなれば成功
3. NCLのチュートリアル
NCLを使い始める2つの方法
• Bottom up 式
: 文法からしっかり知りたい人向け
http://www.ncl.ucar.edu/Document/Manuals/Getting_Started/
• Top down 式
: 習うより慣れろタイプの人向け
Top down 式チュートリアル
最初に抑えるべき項目
Anomalies のリンクをたどってみる
実行結果
プログラムソース
プログラムの内容
使用した関数の説明
Can we run?
4. プログラムソースの解説
木を見て森を見る
おまじない
begin
データ解析
描画
end
おまじないについて
load
load
load
load
"$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
"$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
"$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
"$NCARG_ROOT/lib/ncarg/nclscripts/csm/shea_util.ncl"
基本:
なにも考えずにこの4つを load しておけばよい.
応用:
自分で作成したサブルーチンを集めて、1つの
nclファイルとし、それを load することもできる
データ解析について
ファイル fn 内にある変数 TS を
読み込み、変数 ts に代入
コメント
r: 読み込み
c:作成
コメント
東西平均を削除
• printVarSummary(ts) の1行を加えて実行するとtsの説明がでる
• anom(lat|:,lon|:,time|:)=dim_rmvmean(ts(lat|:,lon|:,time|:)) とすれば、
時間平均を引くことができる
描画について
wks = gsn_open_wks(“ps”,”dev”)
plot = new(2,graphic)
res = True
res@gsnDraw = False
res@gsnFrame = False
出力ファイル名
ファイル形式
plot(0) = gsn_csm_contour_map_ce(wks,ts(0,:,:),res)
plot(1) = gsn_csm_contour_map_ce(wks,anom(0,:,:),res)
gsn_panel(wks,plot,(/2,1/),False)
5. いざ実践