- 积分
- 28
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2015-8-30
- 最后登录
- 1970-1-1
|
楼主 |
发表于 2015-8-31 09:51:24
|
显示全部楼层
不太确定,感觉直接读取的数据有偏置。你看我这样读取,该采取哪种处理方式。- ncinfo(datafilename);
- ncdisp(datafilename);
- ncid = netcdf.open(datafilename,'NC_NOWRITE');
- [numdims, numvars, numglobalatts, unlimdimID] = netcdf.inq(ncid);
- for i=0:numvars-1
- [varname{i+1}, xtype, varDimIDs, varAtts] = netcdf.inqVar(ncid,i);
- varid(i+1) = netcdf.inqVarID(ncid,varname{i+1});
- data = netcdf.getVar(ncid,varid(i+1));
- name = ['data_',varname{i+1}];
- eval([name '=data;']);
- if strcmp(varname{i+1},'u')
- attname1 = netcdf.inqAttName(ncid,i,0); % u scale_factor
- u_factor = netcdf.getAtt(ncid,i,attname1);
- attname2 = netcdf.inqAttName(ncid,i,1); % u add_offset
- u_offset = netcdf.getAtt(ncid,i,attname2);
- data_uu = double(data_u) * u_factor + u_offset;
- end
- if strcmp(varname{i+1},'v')
- attname1 = netcdf.inqAttName(ncid,i,0); % v scale_factor
- v_factor = netcdf.getAtt(ncid,i,attname1);
- attname2 = netcdf.inqAttName(ncid,i,1); % v add_offset
- v_offset = netcdf.getAtt(ncid,i,attname2);
- data_vv = double(data_v) * v_factor + v_offset;
- end
- end
复制代码 |
|