How to solve error "Index exceeds matrix dimensions" when reading netcdf file?
    5 visualizzazioni (ultimi 30 giorni)
  
       Mostra commenti meno recenti
    
I'm trying to import some variables from a netcdf file. The variable "wind speed" has dimensions of 1x1x42456 or lat xlon x time. My current code is 
 datl.wspd=[];datl.time=[]; datl.datenum=[];
            datl.time=ncread(direc(i).name,'time'); %load times from fix
            for i=1:length(datl.time)
                datl.datenum(i)=addtodate(datenum(1970,1,1),fix(datl.time(i)),'second');
            end
%             for j=1:length(datl.time)
%                 datl.datenum(j)=datenum(1970,1,1)+datl.time(j);
%             end
            tstart=min(datl.datenum);
            tend=max(datl.datenum);
            datl.datenum=datl.datenum';
            datl.wspd=zeros(1,1,length(datl.datenum));
            datl.wspd(:,:,:,i)=ncread(direc(i).name,'wind_spd'); %load wspd from file
but I always end up with the error "Index exceeds matrix dimensions". How can I resolve this?
0 Commenti
Risposte (1)
  meghannmarie
      
 il 16 Ott 2020
        datl.wspd has 3 dimensions but when you save data to it you are indexing into a fourth dimension. I think your last line should be this:
datl.wspd(:,:,i)=ncread(direc(i).name,'wind_spd'); %load wspd from file
0 Commenti
Vedere anche
Categorie
				Scopri di più su NetCDF in Help Center e File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

