NetCDF 库在执行 'create' 函数时遇到错误 - 'Invalid argument (22)'
The NetCDF library encountered an error during execution of 'create' function - 'Invalid argument (22)'
我正在尝试创建 netcdf 文件,但出现错误。我以前使用过这个脚本并且它有效,所以我不明白为什么它说其中一个参数是错误的。代码是:
numcolO=numel(ObservationLong);
numrow=1;
numrow12=12;
numrow19=19;
%Read and display the variable from the file.
NameNetcdf='FinOctNovDec2012.nc';
ncid = netcdf.create(NameNetcdf,'CLOBBER');%NC_WRITE
dimidrow = netcdf.defDim(ncid,'rows',numrow);
dimidrowDates=netcdf.defDim(ncid,'timecol',numrow19);
dimidcol = netcdf.defDim(ncid,'length',numcolO);
dimidrowNames=netcdf.defDim(ncid,'namecol',numrow12);
varid = netcdf.defVar(ncid,'MagObs','NC_DOUBLE',[dimidcol dimidrow]);
varid2 = netcdf.defVar(ncid,'MagMod1','NC_DOUBLE',[dimidcol dimidrow]);
varid3 = netcdf.defVar(ncid,'MagMod2','NC_DOUBLE',[dimidcol dimidrow]);
varid4 = netcdf.defVar(ncid,'MagMod3','NC_DOUBLE',[dimidcol dimidrow]);
varid5 = netcdf.defVar(ncid,'MagMod4','NC_DOUBLE',[dimidcol dimidrow]);
varid6 = netcdf.defVar(ncid,'Dates','NC_CHAR',[dimidcol dimidrowDates]);
varid7 = netcdf.defVar(ncid,'Depthz','NC_DOUBLE',[dimidcol dimidrow]);
varid8 = netcdf.defVar(ncid,'EMag1','NC_DOUBLE',[dimidcol dimidrow]);
varid9 = netcdf.defVar(ncid,'EMag2','NC_DOUBLE',[dimidcol dimidrow]);
varid10 = netcdf.defVar(ncid,'EMag3','NC_DOUBLE',[dimidcol dimidrow]);
varid11 = netcdf.defVar(ncid,'EMag4','NC_DOUBLE',[dimidcol dimidrow]);
netcdf.endDef(ncid);
netcdf.putVar(ncid,varid,ObservationLong);
netcdf.putVar(ncid,varid2,ModelLong1);
netcdf.putVar(ncid,varid3,ModelLong2);
netcdf.putVar(ncid,varid4,ModelLong3);
netcdf.putVar(ncid,varid5,ModelLong4);
netcdf.putVar(ncid,varid6,char(date));
netcdf.putVar(ncid,varid7,DLong);
netcdf.putVar(ncid,varid8,EMag1);
netcdf.putVar(ncid,varid9,EMag2);
netcdf.putVar(ncid,varid10,EMag3);
netcdf.putVar(ncid,varid11,EMag4);
netcdf.close(ncid);
错误是:
>> NetcdfSimple
Error using netcdflib
The NetCDF library encountered an error during execution of 'create' function - 'Invalid
argument (22)'.
Error in netcdf.create (line 61)
ncid = netcdflib('create', filename, mode);
Error in NetcdfSimple (line 8)
ncid = netcdf.create(NameNetcdf,'CLOBBER');%NC_WRITE
但唯一的参数是 NameNetcdf,即 'FinOctNovDec2012.nc' 和 'CLOBBER',根据 netcdf.create 帮助,这是一个有效的参数。
如何修复此错误?
问题是我要写入的文件夹位于已满的 U 盘上。设备上没有足够的 space。它与参数无关。
我正在尝试创建 netcdf 文件,但出现错误。我以前使用过这个脚本并且它有效,所以我不明白为什么它说其中一个参数是错误的。代码是:
numcolO=numel(ObservationLong);
numrow=1;
numrow12=12;
numrow19=19;
%Read and display the variable from the file.
NameNetcdf='FinOctNovDec2012.nc';
ncid = netcdf.create(NameNetcdf,'CLOBBER');%NC_WRITE
dimidrow = netcdf.defDim(ncid,'rows',numrow);
dimidrowDates=netcdf.defDim(ncid,'timecol',numrow19);
dimidcol = netcdf.defDim(ncid,'length',numcolO);
dimidrowNames=netcdf.defDim(ncid,'namecol',numrow12);
varid = netcdf.defVar(ncid,'MagObs','NC_DOUBLE',[dimidcol dimidrow]);
varid2 = netcdf.defVar(ncid,'MagMod1','NC_DOUBLE',[dimidcol dimidrow]);
varid3 = netcdf.defVar(ncid,'MagMod2','NC_DOUBLE',[dimidcol dimidrow]);
varid4 = netcdf.defVar(ncid,'MagMod3','NC_DOUBLE',[dimidcol dimidrow]);
varid5 = netcdf.defVar(ncid,'MagMod4','NC_DOUBLE',[dimidcol dimidrow]);
varid6 = netcdf.defVar(ncid,'Dates','NC_CHAR',[dimidcol dimidrowDates]);
varid7 = netcdf.defVar(ncid,'Depthz','NC_DOUBLE',[dimidcol dimidrow]);
varid8 = netcdf.defVar(ncid,'EMag1','NC_DOUBLE',[dimidcol dimidrow]);
varid9 = netcdf.defVar(ncid,'EMag2','NC_DOUBLE',[dimidcol dimidrow]);
varid10 = netcdf.defVar(ncid,'EMag3','NC_DOUBLE',[dimidcol dimidrow]);
varid11 = netcdf.defVar(ncid,'EMag4','NC_DOUBLE',[dimidcol dimidrow]);
netcdf.endDef(ncid);
netcdf.putVar(ncid,varid,ObservationLong);
netcdf.putVar(ncid,varid2,ModelLong1);
netcdf.putVar(ncid,varid3,ModelLong2);
netcdf.putVar(ncid,varid4,ModelLong3);
netcdf.putVar(ncid,varid5,ModelLong4);
netcdf.putVar(ncid,varid6,char(date));
netcdf.putVar(ncid,varid7,DLong);
netcdf.putVar(ncid,varid8,EMag1);
netcdf.putVar(ncid,varid9,EMag2);
netcdf.putVar(ncid,varid10,EMag3);
netcdf.putVar(ncid,varid11,EMag4);
netcdf.close(ncid);
错误是:
>> NetcdfSimple
Error using netcdflib
The NetCDF library encountered an error during execution of 'create' function - 'Invalid
argument (22)'.
Error in netcdf.create (line 61)
ncid = netcdflib('create', filename, mode);
Error in NetcdfSimple (line 8)
ncid = netcdf.create(NameNetcdf,'CLOBBER');%NC_WRITE
但唯一的参数是 NameNetcdf,即 'FinOctNovDec2012.nc' 和 'CLOBBER',根据 netcdf.create 帮助,这是一个有效的参数。
如何修复此错误?
问题是我要写入的文件夹位于已满的 U 盘上。设备上没有足够的 space。它与参数无关。