MATLAB--nc文件的读取及二进制文件的输出
(2019-05-20 09:26:34)分类: MATLAB |
NCEP:
clc;
clear
all;
%nc批量读取的数据
datadir1='D:\data\ncep_monthly\pressure\';
filelist1=dir([datadir1,'air.mon.mean.nc']);
minlat=-90;maxlat=90;minlon=0;maxlon=357.5;
filename1=[datadir1,filelist1.name];
ncid1=netcdf.open(filename1,'NC_NOWRITE');
lat=ncread(filename1,'lat');
lon=ncread(filename1,'lon');
la=find((lat<=maxlat)&(lat>=minlat));
lo=find((lon<=maxlon)&(lon>=minlon));
latitude=lat(la,:);
longitude=lon(lo,:);
t_1= ncread(filename1,'air');
t(:,:,:,:)=t_1(lo,la,1:12,:);
netcdf.close(ncid1);
fileID1=fopen('airtemp.bin','w');
fwrite(fileID1,t,'single');
fclose(fileID1);
ECMWF:
clc;
clear
all;
filelist1=dir([datadir1,'sounding*.nc']);
k1=length(filelist1);
% 读取数据
minlat=-90;maxlat=90;minlon=0;maxlon=360;
n=1;
for
w_1= ncread(filename,'w');
w(:,:,:,n:n+l-1)=w_1(lo,la,37:-1:11,:);
end;
fileID5=fopen('D:\sunxy\study\Q1Q2\Fortran热源\glo\1\omega.bin','w');
fwrite(fileID5,w,'single');
fclose(fileID5)
注意:用MATLAB读取ECMWF文件,气压层会倒置。