MATLAB Answers

Steven
0

Start+count exceeds dimension bound (NC_EEDGE)

Asked by Steven
on 28 Jan 2016
Latest activity Commented on by Steven
on 28 Jan 2016
I'm trying to load netcdf data, crop it, and then save it to a new netcdf file. For some reason I'm getting the following error and it's driving me crazy.
Error using netcdflib
The NetCDF library encountered an error during execution of 'putVaraDouble' function - 'Start+count exceeds dimension bound
(NC_EEDGE)'.
Error in netcdf.putVar (line 84)
netcdflib(funcstr,ncid,varid,varargin{:});
Error in internal.matlab.imagesci.nc/write (line 831)
netcdf.putVar(gid, varid,start, count, varData);
Error in ncwrite (line 75)
ncObj.write(varName, varData, start, stride);
Error in Make_initial_rst_file_no_single (line 289)
ncwrite(nfile,'h',ncread(tfile,'h'));
------------------------------
The script that it is choking on is as follows...
h=ncread(tfile,'h');
h=h(istart:iend,jstart:jend);
nccreate(nfile,'h','Datatype','double','Dimensions',{'xi_rho',size(h,1),'eta_rho',size(h,2)});
ncwrite(nfile,'h',ncread(tfile,'h'));
All I am doing is loading in "h" from an existing netcdf file, cropping it with the i and j start and end values, and trying to save it to a new netcdf file.
I have double checked the dimensions and they are correct. 32 x 37 is the dimension of the new "h" array after cropping.

  0 Comments

Sign in to comment.

1 Answer

Answer by Ashish Uthama on 28 Jan 2016
Edited by Ashish Uthama on 28 Jan 2016
 Accepted Answer

The ncread call in you ncwrite call returns the full variable, did you mean to use the variable h instead of the function call?

  1 Comment

Doh! Well that was silly. Found my mistake. Thank you for your help.

Sign in to comment.