Up|<<Prev|Next>>


4.2 既知の名前の NetCDF ファイルを読む

ここでは NetCDFファイルの名前ばかりでなく、それに含まれている次元・変数・属性の名前も既知である場合を取り上げます。(そうでない場合には"inquireモコールをする必要があります。NetCDFファイルの中の変数のデータを読むための極一般的なCでのコールの順序は:

    nc_open                /* 既存のNetCDFfファイルを開く */
         ... 
       nc_inq_dimid        /* 次元IDを取得 */
         ... 
       nc_inq_varid        /* 変数IDを取得 */
         ... 
       nc_get_att     
     /* 属性値を取得 */
         ... 
       nc_get_var          /* 変数の値を取得 */
         ... 
    nc_close               /* NetCDFファイルを閉じる */

まず、ファイルの名前を与えることにより、 最初のコールがNetCDFファイルを開きます。そして、その後、開かれたファイルを参照するために必要なNetCDF IDを返します。

次に、 nc_inq_dimid へのコールでアクセスする次元ごとに 次元名に由来した次元IDが割り振られます。同様にして、必要な変数IDも変数名に由来する名前が nc_inq_varid へのコールで決定されます。 一旦、変数IDを手に入れれば、 NetCDF ID、変数ID、そして必要な属性名を使うことにより、 nc_get_att ファミリーのメンバーとして入力することにより、変数の属性値も読み取れます。(通常、各々の属性に対して nc_get_att_text もしくは、 nc_get_att_double ) 。変数データの値はNetCDFファイルから、直接アクセスすることが出来ます。単一の値の場合には、 nc_get_var1 ファミリーのメンバーへのコールのよって、 そして変数全体の場合には nc_get_var ファミリーへ、又は配列・部分サンプル・マップドアクセスの場合には nc_get_vara , nc_get_vars , もしくは nc_get_varm ファミリーへのコールを使います。

最後に、 NetCDF ファイルは nc_close によって閉じられます。読み取るだけのためにファイルを開いた場合には閉じる必要はありません。


Up|<<Prev|Next>>