1 | function extract_NCEP_Mask_Mydata(NCEP_dir,url,fname,... |
---|
2 | year,month,... |
---|
3 | lon,lat,level,... |
---|
4 | i1min,i1max,i2min,i2max,i3min,i3max,... |
---|
5 | jmin,jmax,Get_My_Data) |
---|
6 | |
---|
7 | % |
---|
8 | % Get 'Land'/mask |
---|
9 | % |
---|
10 | disp(['Get land for year ',num2str(year),' - month ',num2str(month)]) |
---|
11 | % |
---|
12 | % Get the variable 2D subset (take care of greenwitch) |
---|
13 | % |
---|
14 | nc=netcdf([url,fname,'.nc']); |
---|
15 | if ~isempty(i1min) |
---|
16 | var1=squeeze(nc{'land'}(1,jmin:jmax,i1min:i1max)); |
---|
17 | else |
---|
18 | var1=[]; |
---|
19 | end |
---|
20 | % |
---|
21 | if ~isempty(i2min) |
---|
22 | var2=squeeze(nc{'land'}(1,jmin:jmax,i2min:i2max)); |
---|
23 | else |
---|
24 | var2=[]; |
---|
25 | end |
---|
26 | if ~isempty(i3min) |
---|
27 | var3=squeeze(nc{'land'}(1,jmin:jmax,i3min:i3max)); |
---|
28 | else |
---|
29 | var3=[]; |
---|
30 | end |
---|
31 | % |
---|
32 | var=cat(2,var1,var2,var3); |
---|
33 | |
---|
34 | close(nc) |
---|
35 | |
---|
36 | nc=netcdf([url,fname,'.nc']); |
---|
37 | add_offset=nc{'land'}.add_offset(:); |
---|
38 | if isempty(add_offset) |
---|
39 | add_offset=0; |
---|
40 | end |
---|
41 | scale_factor=nc{'land'}.scale_factor(:); |
---|
42 | if isempty(scale_factor) |
---|
43 | scale_factor=1 |
---|
44 | end |
---|
45 | missing_value=nc{'land'}.missing_value(:); |
---|
46 | if isempty(missing_value) |
---|
47 | missing_value=-99999; |
---|
48 | end |
---|
49 | |
---|
50 | % |
---|
51 | % Correct the variable |
---|
52 | % |
---|
53 | var(var==missing_value)=NaN; |
---|
54 | var=add_offset+var.*scale_factor; |
---|
55 | % |
---|
56 | % |
---|
57 | % Write it in a file |
---|
58 | % |
---|
59 | write_NCEP_Mask([NCEP_dir,'land_Y',num2str(year),'M',num2str(month),'.nc'],... |
---|
60 | 'land',lon,lat,var) |
---|
61 | % |
---|
62 | return |
---|