1 ; ***********************************************
2 ; interpolate into model grids (T42)
3 ; output: lat: S->N lon: 0->360
4 ; input : lat: N->S lon: -180->180
5 ; ***********************************************
6 load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
7 load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
8 load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
9 ;************************************************
14 ;************************************************
16 ;************************************************
17 diro = "/fis/cgd/cseg/people/jeff/clamp_data/lai/ob/"
18 filo = "land_class_T31.nc"
19 c = addfile(diro+filo,"c")
21 ;************************************************
22 ; read in observed data
23 ;************************************************
24 diri = "/fis/cgd/cseg/people/jeff/clamp_data/lai/ob/"
25 fili = "land_class_0.25deg_new.nc"
26 g = addfile (diri+fili,"r")
31 ;************************************************
32 ; change into 0-360E, 90S-90N
33 ;************************************************
63 ;************************************************
65 ;************************************************
66 diri2 = "/fis/cgd/cseg/people/jeff/clamp_data/model/"
67 fili2 = "b30.061n_1995-2004_ANN_climo_lnd.nc"
68 f = addfile (diri2+fili2,"r")
80 bo = new((/nlat,nlon/),integer)
81 count = new((/nclass/),integer)
84 if (j.eq.0 .or. j.eq.nlat-1) then
87 LATN = lat(j)+0.5*(lat(j+1)-lat(j))
90 LATS = lat(j)-0.5*(lat(j)-lat(j-1))
94 LATS = lat(j)-0.5*(lat(j)-lat(j-1))
95 LATN = lat(j)+0.5*(lat(j+1)-lat(j))
99 if (i.eq.0 .or. i.eq.nlon-1) then
102 LONR = lon(i)+0.5*(lon(i+1)-lon(i))
104 if (i.eq.nlon-1) then
105 LONL = lon(i)-0.5*(lon(i)-lon(i-1))
109 LONL = lon(i)-0.5*(lon(i)-lon(i-1))
110 LONR = lon(i)+0.5*(lon(i+1)-lon(i))
121 count(n) = num (bi({LATS:LATN},{LONL:LONR}).eq.n)
124 bo(j,i) = maxind(count)
133 bo@long_name = bi@long_name
134 bo@_FillValue = bi@_FillValue
136 print (min(bo) + "/" + max(bo))