尝试在 netcdf4 中定义具有两个(或更多)无限维度的变量时出错

Error when attempt to define a variable with two (or more) unlimited dimensions in netcdf4

我正在尝试定义和编写一个具有两个无限维度的变量,使用 netcdf-c(版本 4.8.1),如下所示..

...
...
...

if ((rval = nc_create(out_file_nm, NC_CLOBBER, &out_ncid))) err(rval);


//// create netcdf dimensions
if ((rval = nc_def_dim(out_ncid, t_nm, NC_UNLIMITED, &out_t_dimid))) err(rval);
if ((rval = nc_def_dim(out_ncid, y_nm, nres_y      , &out_y_dimid))) err(rval);
if ((rval = nc_def_dim(out_ncid, x_nm, nres_x      , &out_x_dimid))) err(rval);
if ((rval = nc_def_dim(out_ncid, b_nm, NC_UNLIMITED, &out_b_dimid))) err(rval);

...
...
...

我收到以下错误消息。

Error: NetCDF: NC_UNLIMITED size already in use

据我所知,从 netcdf-4 开始,我认为我们可以使用多个无限维度 (link: https://www.unidata.ucar.edu/software/netcdf/workshops/2010/netcdf4/UnlimDims.html)。

我不知道该怎么办。我要写的值的大小是不确定的,它会随着时间维度而变化。所以,我真的很想为此使用两个无限维度。

有没有人有使用多个无限维度的经验?

我会尝试为您的 nc_create 通话添加模式选项。 NetCDF 默认为具有无限维度的经典数据模型。参见:https://www.unidata.ucar.edu/software/netcdf/docs/faq.html#formatsdatamodelssoftwarereleases