NetCDF

このページは、NetCDFのメモです。

2011/05/20 Update

NetCDFの予約関数(FORTRAN77用)

参考URL:http://www.gfd-dennou.org/arch/netcdf/netcdf-jman/guidef/Title.html

NCOを使ってNetCDFデータを操作

Install

CentOS 5.5 x86_64でやってみました。

ここから、

nco-3.9.5-1.x86_64.rpm

nco-devel-3.9.5-1.x86_64.rpm

libdap-3.6.2-1.x86_64.rpm

libnc-dap-3.6.0-1.x86_64.rpm

をインストールする。

詳しくは、本家NCOを参照→http://nco.sourceforge.net/

(2011年01月22日追記):

epel レポジトリを使うと, Fedoraの最新版NCOが使えるようになる.

epel レポジトリの設定等はこちらを参照

-----

実際に使ってみる

非常に参考になりました。

http://nco.sourceforge.net/nco.html

http://shimizus.hustle.ne.jp/diary15/index.cgi?mode=&pass=&log=200601#6

使用できるコマンド

    • ncap2 : netCDF Arithmetic Processor

    • (算術演算プロセッサー)

    • ncatted : netCDF Attribute Editor

    • (属性エディタ?)

    • ncbo : netCDF Binary Operator (includes ncadd, ncsubtract, ncmultiply, ncdivide)

    • (バイナリ演算子)

    • ncea : netCDF Ensemble Averager

    • (アンサンブル平均?)

    • ncecat : netCDF Ensemble Concatenator

    • (アンサンブル連結)

    • ncflint : netCDF File Interpolator

    • (ファイル内挿)

    • ncks : netCDF Kitchen Sink

    • (netCDFの台所!)

    • (ex) : 四国領域のみをhuga.ncに書き出す.

    • $ ncks -d lon,132.0,135.0 -d lat,32.5,34,5 hoge.nc huga.nc

    • (ex) : RAINNCの変数だけを取り出して, 時間方向に結合したものをOUTPUT.

    • $ ncks -v RAINNC wrfout_* wrfout_RAINNC.nc

    • ncpdq : netCDF Permute Dimensions Quickly, Pack Data Quietly

    • (データの配列順序変更や, データを迅速にパックする)

    • ncra : netCDF Record Averager

    • (レコード平均)

    • ncrcat : netCDF Record Concatenator

    • (レコード連結)

    • (ex) : 全データを時間方向に結合したものをOUTPUT.

    • $ ncrcat wrfout_* wrfout_all.nc

    • ncrename : netCDF Renamer

    • (変数の名前変更)

    • ncwa : netCDF Weighted Averager

    • (重みつき平均)

こんな感じです。

まだ使ったこと無いコマンドもあるので、おいおい試してみたいです。

-----

番外編:もっとマニアックに使う

1. NCOで並列処理(OpenMPI編)

OpenMPIがインストールされていることが前提です.

Installしていない場合は, ここを参考にしてください. 超わかりやすいです.

さて, いきなりいきますが, 実行方法は以下のようにコマンドを打つだけです.

$ mpirun -n 4 ncrcat [input_file] -o [output_file]

すげー!!

2. NCOで並列処理(MPICH編)

MPICHがインストールされていることが前提です.

Installしていない場合は, ここここ を参考にしてください.

またもやいきなりですが, 実行方法は以下のようにコマンドを打つだけです.

$ mpd &

$ mpiexec -n 4 ncrcat [input_file] -o [output_file]

もう虜になりますね.