|
1 ;************************************************ |
|
2 ; output: lat: N->S lon: -180W->180E |
|
3 ;************************************************ |
|
4 load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl" |
|
5 load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl" |
|
6 load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl" |
|
7 ;************************************************ |
|
8 begin |
|
9 |
|
10 ; output |
|
11 |
|
12 model_name = "i01.36cn" |
|
13 |
|
14 diro = "/lustre/wolf-ddn/scratch/hof/cases1/i01.36cn_out/" |
|
15 filo = model_name + "_Fire_C_2076-2100_monthly.nc" |
|
16 c = addfile(diro+filo,"c") |
|
17 filedimdef(c,"year",-1,True) |
|
18 |
|
19 ; input data |
|
20 |
|
21 nlat = 96 |
|
22 nlon = 144 |
|
23 |
|
24 year_start = 2076 |
|
25 year_end = 2100 |
|
26 |
|
27 nyear = year_end - year_start + 1 |
|
28 nmonth = 12 |
|
29 |
|
30 data1 = new((/nyear,nmonth,nlat,nlon/),float) |
|
31 data2 = new((/nyear,nmonth,nlat,nlon/),float) |
|
32 data3 = new((/nyear,nmonth,nlat,nlon/),float) |
|
33 date = new((/nyear,nmonth/),integer) |
|
34 |
|
35 ; input dir |
|
36 diri = "/lustre/wolf-ddn/scratch/hof/cases1/"+model_name+"/" |
|
37 |
|
38 do m = 0,nyear-1 |
|
39 year = year_start + m |
|
40 do n = 0,nmonth-1 |
|
41 nn = n+1 |
|
42 date(m,n) = year*100 +nn |
|
43 |
|
44 ; input file |
|
45 if (nn .ge. 10) then |
|
46 fili = model_name+".clm2.h0."+year+"-"+nn+".nc" |
|
47 else |
|
48 fili = model_name+".clm2.h0."+year+"-0"+nn+".nc" |
|
49 end if |
|
50 |
|
51 ; print (fili) |
|
52 |
|
53 g = addfile (diri+fili,"r") |
|
54 |
|
55 b1 = g->COL_FIRE_CLOSS |
|
56 data1(m,n,:,:) = (/b1(0,:,:)/) |
|
57 |
|
58 b2 = g->NPP |
|
59 data2(m,n,:,:) = (/b2(0,:,:)/) |
|
60 |
|
61 b3 = g->NEE |
|
62 data3(m,n,:,:) = (/b3(0,:,:)/) |
|
63 end do |
|
64 end do |
|
65 |
|
66 ; name dimensions and assign coordinate variables |
|
67 |
|
68 data1!0 ="year" |
|
69 data1!1 ="month" |
|
70 data1!2 = "lat" |
|
71 data1!3 = "lon" |
|
72 data1@long_name = b1@long_name |
|
73 data1@units = b1@units |
|
74 data1@_FillValue = b1@_FillValue |
|
75 |
|
76 data2!0 ="year" |
|
77 data2!1 ="month" |
|
78 data2!2 = "lat" |
|
79 data2!3 = "lon" |
|
80 data2@long_name = b2@long_name |
|
81 data2@units = b2@units |
|
82 data2@_FillValue = b2@_FillValue |
|
83 |
|
84 data3!0 ="year" |
|
85 data3!1 ="month" |
|
86 data3!2 = "lat" |
|
87 data3!3 = "lon" |
|
88 data3@long_name = b3@long_name |
|
89 data3@units = b3@units |
|
90 data3@_FillValue = b3@_FillValue |
|
91 |
|
92 date!0 ="year" |
|
93 date!1 ="month" |
|
94 date@long_name = "date: yyyymm" |
|
95 |
|
96 c->COL_FIRE_CLOSS = data1 |
|
97 c->NPP = data2 |
|
98 c->NEE = data3 |
|
99 c->date = date |
|
100 c->area = g->area |
|
101 |
|
102 print (date) |
|
103 |
|
104 end |