Main Content

NetCDF API 構文の MATLAB 構文へのマッピング

MATLAB® では、netcdf という名前のパッケージにグループ化されている一連の低水準関数を使用して NetCDF C ライブラリ内のルーチンにアクセスできます。このパッケージの関数を使用して NetCDF ファイルに対し、データの読み取りと書き込みを行います。MATLAB NetCDF 関数を効果的に使用するには、NetCDF インターフェイスに関する知識が必要です。

通常、netcdf パッケージ内の MATLAB 関数は、NetCDF C ライブラリ内のルーチンにちょうど対応しています。たとえば、MATLAB の関数 netcdf.open は NetCDF ライブラリのルーチン nc_open に相当します。場合によっては、1 つの MATLAB 関数が NetCDF ライブラリ関数の 1 つのグループに対応することもあります。たとえば、NetCDF ライブラリの nc_put_att_type 関数 (type はデータ型を表す) すべてに MATLAB の対応バージョンを作成する代わりに、MATLAB では 1 つの関数 netcdf.putAtt を使用してサポートされるすべてのデータ型を扱います。

netcdf パッケージ内のいずれかの関数を呼び出すには、関数名の前にパッケージ名を指定しなければなりません。MATLAB 関数の構文は NetCDF ライブラリのルーチンと同様です。ただし、NetCDF C ライブラリのルーチンでは入力パラメーターを使用してデータを返しますが、対応する MATLAB の関数では 1 つ以上の戻り値を使用します。たとえば、次は NetCDF ライブラリ内の nc_open ルーチンの関数シグネチャです。

int nc_open (const char *path, int omode, int *ncidp); /* C syntax */

NetCDF のファイル識別子は ncidp 引数で返されます。

これは、対応する MATLAB 関数 netcdf.open のシグネチャです。

ncid = netcdf.open(filename,mode)

NetCDF C ライブラリ側のものと同様、MATLAB の NetCDF 関数は、ファイル名とアクセス モードを指定する定数とを受け入れます。ただし、MATLAB の関数 netcdf.open では、ファイル識別子 ncid が戻り値として返されます。

MATLAB NetCDF 関数では、NetCDF のデータ型に最も一致する MATLAB クラスが自動的に選択されます。以下の表は既定のマッピングです。

NetCDF データ型MATLAB クラス
NC_DOUBLEdouble
NC_FLOATsingle
NC_INT64 (NetCDF-4 ファイルのみ)int64
NC_UINT64 (NetCDF-4 ファイルのみ)uint64
NC_INTint32
NC_UINT (NetCDF-4 ファイルのみ)uint32
NC_SHORTint16
NC_USHORT (NetCDF-4 ファイルのみ)uint16
NC_BYTEint8
NC_UBYTE (NetCDF-4 ファイルのみ)uint8
NC_CHARchar
NC_STRING (NetCDF-4 ファイルのみ)string
ユーザー定義の NC_VLEN 型 (NetCDF-4 ファイルのみ)cell

関数 netcdf.getVar のオプションの引数を使用して既定値をオーバーライドし、返されたデータのクラスを指定できます。

関連するトピック

外部の Web サイト