TOC PREV NEXT INDEX

Put your logo here!


7.4 IDから変数の情報を取得する: NF_INQ_VAR ファミリー


この関数のファミリーは変数のIDを与えるとそのNetCDF変数に関する情報を返します。 変数に関する情報にはその名前・型・次元の数・変数の形を表す変数IDのリスト・変数に割り当てられている変数属性の数等です。

関数NF_INQ_VAR はある変数のIDを与えるとNetCDF関数に関する情報をすべて返します。その他の関数はある変数に関する一つの情報を返します。

この他の関数とは NF_INQ_VARNAME, NF_INQ_VARTYPE, NF_INQ_VARNDIMS, NF_INQ_VARDIMID, NF_INQ_VARNATTS等です。

用法
INTEGER FUNCTION NF_INQ_VAR (INTEGER NCID, INTEGER VARID,
CHARACTER*(*) name, INTEGER xtype,
INTEGER ndims, INTEGER dimids(*),
INTEGER natts)
INTEGER FUNCTION NF_INQ_VARNAME (INTEGER NCID, INTEGER VARID,
CHARACTER*(*) name)
INTEGER FUNCTION NF_INQ_VARTYPE (INTEGER NCID, INTEGER VARID,
INTEGER xtype)
INTEGER FUNCTION NF_INQ_VARNDIMS (INTEGER NCID, INTEGER VARID,
INTEGER ndims)
INTEGER FUNCTION NF_INQ_VARDIMID (INTEGER NCID, INTEGER VARID,
INTEGER dimids(*))
INTEGER FUNCTION NF_INQ_VARNATTS (INTEGER NCID, INTEGER VARID,
INTEGER natts)
NCID 以前のNF_OPEN または NF_CREATE呼び出しで返されたNetCDF ID。
VARID 変数ID
name 返された 変数名。あらかじめ返される名前のためのスペースを確保しておく必要があります。変数名の最大文字数はあらかじめ定義された定数 NF_MAX_NAMEで表されます。
xtype 返された変数の外部型で、あらかじめ定義されたNetCDF外部データ型の集合の一つ。有効なNetCDF外部データ型は NF_BYTE, NF_CHAR, NF_SHORT, NF_INT, NF_FLOAT, と NF_DOUBLEです。
ndims この変数に対して返された次元の数。例えば、2は行列、1はベクトル、ゼロはその変数が無次元のスカラーであることを示します。
dimids 返された 変数の次元に対応する次元ID NDIMS のベクトル。あらかじめ NDIMS 整数のベクトル用のスペースを確保する必要があります。変数が取れる最大の次元数はあらかじめ定義された定数 NF_MAX_VAR_DIMS によって表されます。
natts 返されたこの変数に割り当てられた変数属性の数

エラー

これらの関数はエラーが発生していない場合には NF_NOERR 値を返します。それ以外の場合は、返されたステータスがエラーの発生を示します。エラーの原因としては:

・ 変数IDが指定されたNetCDFファイルに対して有効ではない。
・ 指定されたNetCDF IDがオープンされたNetCDFファイルを参照していない。

これは NF_INQ_VAR を使用してNetCDFファイルfoo.ncの中の rh という変数に関しての情報を探す例です。

INCLUDE 'netcdf.inc'

INTEGER STATUS, NCID
INTEGER RHID ! 変数 ID
CHARACTER*31 RHNAME ! 変数名
INTEGER RHTYPE ! 変数型
INTEGER RHN ! 次元の数
INTEGER RHDIMS(NF_MAX_VAR_DIMS) ! 変数の形
INTEGER RHNATT ! 属性の数

STATUS = NF_OPEN ('foo.nc', NF_NOWRITE, NCID)
IF (STATUS .NE. NF_NOERR) CALL HANDLE_ERR(STATUS)

STATUS = NF_INQ_VARID (NCID, 'rh', RHID) ! get ID
IF (STATUS .NE. NF_NOERR) CALL HANDLE_ERR(STATUS)
STATUS = NF_INQ_VAR (NCID, RHID, RHNAME, RHTYPE, RHN, RHDIMS, RHNATT)
IF (STATUS .NE. NF_NOERR) CALL HANDLE_ERR(STATUS)



Quadralay Corporation
http://www.webworks.com
Voice: (512) 719-3399
Fax: (512) 719-3606
sales@webworks.com
TOC PREV NEXT INDEX