Error using netcdflib
The NetCDF library encountered an error during execution of 'defVar' function -
'NC_UNLIMITED in the wrong index (NC_EUNLIMPOS)'.
Error in netcdf.defVar (line 38)
varid = netcdflib('defVar', ncid, varname, xtype, dimids);
create_nc_for_HRLDAS_05_06_2013_unix_wong_100x120错误(第193行)
varid_Q2D = netcdf.defVar(ncid,'Q2D','float',[Time west_east south_north]);
BLOCKQUOTE>
我附上了相关的脚本部分:
%%% WRITE NETCDF FILE FOR EVERY TIMESTEP
%
disp('Actually creating NetCDF files...')
for k = 1:length(daysfull);
%for k = 1:3
fname_date_ex = cell2str(filename_datestring{k});
fname_date = fname_date_ex(3:14);
gatt_date_ex = cell2str(globalattribute_datestring{k});
gatt_date = gatt_date_ex(2:20);
%%%%%%%%%%%%%% Create new netcdf file ///
%
eval(['fileenc = ''' fname_date '.nc'';']);
ncid = netcdf.create(fileenc,'CLOBBER');
eval(['full_fname = ''' fileenc ''';']);
%%%%%%%%%%%%%% Define dimensions ///
%
Time = netcdf.defDim(ncid,'Time',netcdf.getConstant('NC_UNLIMITED'));
west_east = netcdf.defDim(ncid,'west_east',length(lon));
south_north = netcdf.defDim(ncid,'south_north',length(lat));
%%%%%%%%%%%%%% Define variables ///
%
%
% varid_time = netcdf.defVar(ncid,'time','double',Time);
% netcdf.putAtt(ncid,varid_time,'long_name','Time');
% %
% varid_lat = netcdf.defVar(ncid,'south_north','double',south_north);
% netcdf.putAtt(ncid,varid_lat,'FieldType',104);
% netcdf.putAtt(ncid,varid_lat,'MemoryOrder','XY');
% netcdf.putAtt(ncid,varid_lat,'description','LATITUDE, SOUTH IS NEGATIVE');
% netcdf.putAtt(ncid,varid_lat,'units','degree_north');
% netcdf.putAtt(ncid,varid_lat,'stagger','');
% %
% varid_lon = netcdf.defVar(ncid,'west_east','double',west_east);
% netcdf.putAtt(ncid,varid_lon,'FieldType',104);
% netcdf.putAtt(ncid,varid_lon,'MemoryOrder','XY');
% netcdf.putAtt(ncid,varid_lon,'description','LONGITUDE, WEST IS NEGATIVE');
% netcdf.putAtt(ncid,varid_lon,'units','degree_east');
% netcdf.putAtt(ncid,varid_lon,'stagger','');
%
varid_Q2D = netcdf.defVar(ncid,'Q2D','float',[Time west_east south_north]);
netcdf.putAtt(ncid,varid_Q2D,'FieldType',104);
netcdf.putAtt(ncid,varid_Q2D,'MemoryOrder','XY');
netcdf.putAtt(ncid,varid_Q2D,'description','QV at 2 M');
netcdf.putAtt(ncid,varid_Q2D,'units','