Main Content

netcdf.defVarDeflate

netCDF 変数の圧縮パラメーターを定義する

説明

netcdf.defVarDeflate(ncid,varid,shuffle,deflate,deflateLevel) は、ncid によって指定された場所にある、varid によって指定された netCDF 変数の圧縮パラメーターを設定します。

すべて折りたたむ

この例では、次元が [1800 3600] で圧縮レベルが 5 の変数を作成します。結果として、1010 列のグリッドであるチャンク化されたレイアウトが作成されます。独自のチャンク化を定義する場合は、関数 netcdf.defVarChunking を使用します。定義しなかった場合、netcdf.defVarDeflate は既定のライブラリ値を使用します。

ncid = netcdf.create("myfile.nc","NETCDF4");
latdimid = netcdf.defDim(ncid,"lat",1800);
londimid = netcdf.defDim(ncid,"col",3600);
varid = netcdf.defVar(ncid,"earthgrid","double",[latdimid londimid]);
netcdf.defVarChunking(ncid,varid,"CHUNKED",[180 360]);
netcdf.defVarDeflate(ncid,varid,true,true,5);
netcdf.close(ncid);

入力引数

すべて折りたたむ

netcdf.create または netcdf.open によって返される netCDF ファイルの識別子、または netcdf.defGrp によって返される netCDF グループの識別子。非負の整数スカラーとして指定します。

データ型: double

NetCDF 変数の識別子。非負の整数スカラーとして指定します。変数の識別子は、関数 netcdf.defVar で返されます。

データ型: double

netcdf.defVar で返される netCDF 変数の識別子。非負の整数スカラーとして指定します。

データ型: double

シャッフル フィルターのステータス。数値として、あるいは logical 0 (false) または 1 (true) として指定します。値 false はシャッフル フィルターを無効にし、true は有効にします。シャッフル フィルターは、データ ストリームのバイト順を変更することにより、整数データの圧縮に役立ちます。varidNC_STRING 型または NC_VLEN 型の変数を参照している場合、shuffletrue に設定することはできません。

データ型: logical

deflate フィルターのステータス。数値または logical 0 (false) または 1 (true) として指定します。deflatetrue として指定して圧縮を有効にしてから、deflateLevel を目的の正の圧縮レベルとして指定します。圧縮を無効にする場合は、deflatefalse として指定します。deflateLevel0 として指定された場合、deflate の値は自動的に false に設定されます。

データ型: logical

圧縮のレベル。09 の整数スカラー値として指定します。値 0 は圧縮しないことを示し、deflate の値を false に指定することと等価です。値 1 は最小圧縮を示し、値 9 は最大圧縮を示します。deflatefalse の場合、deflateLevel の値は無視されます。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

制限

  • varidNC_STRING 型または NC_VLEN 型の変数を参照している場合、deflatetrue に設定して deflateLevel を正の値に設定することはできません。

ヒント

  • この関数は、netCDF ライブラリ C API の関数 nc_def_var_deflate に相当します。

バージョン履歴

R2010b で導入

すべて展開する