- 积分
- 154
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2013-3-25
- 最后登录
- 1970-1-1
|

楼主 |
发表于 2014-3-27 19:35:48
|
显示全部楼层
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/shea_util.ncl"
begin
pi=3.14159
g=9.8
r=6400000 ;1981.1-2010.12 29nian
v = addfile ("$NCARG_ROOT/lib/ncarg/data/cdf/vwnd.mon.mean.nc", "r")
vf12 = short2flt(v->vwnd(395:754,0:9,:,:))
vf1212=new((/360,10,73/),"float")
vf1212=dim_avg_n(vf12,3)
p=(/1000.,900.,800.,700.,600.,500.,400.,300.,200.,100./)
vf2=new((/360,10,73/),"float")
vf3=new((/360,10,73/),"float")
vf4=new((/360,10,73/),"float")
do it=0,359
do iy=0,72
do iz=0,9
vf2(it,iz,iy)=vibeta(p,vf1212(it,:,iy),1,1013.,p(iz),99.)
vf3(it,iz,iy)=vf2(it,iz,iy)*cos((iy-36)*2.5*3.14159/180)
vf4(it,iz,iy)=2*3.14159*6400000*vf3(it,iz,iy)/(9.8*10000000)
end do
end do
end do
lev_p = (/1000.,900.,800.,700.,600.,500.,400.,300.,200.,100./)
lev_p@units = "hPa"
mm=new((/360,3,3/),"float")
do itt=0,359
do izz=1,8
do iyy=0,72
if(vf4(itt,izz,iyy).eq.0)then
if((iyy.le.56).and.(iyy.gt.44))then
mm(itt,izz,0)=iyy*2.5-90
else
if((iyy.le.44).and.(iyy.ge.28))then
mm(itt,izz,1)=iyy*2.5-90
else
if((iyy.ge.16).and.(iyy.lt.28))then
mm(itt,izz,2)=iyy*2.5-90
end if
end if
end if
end if
end do
end do
end do
mmt=new((/360,3/),"float")
mmt=dim_avg_n(mm,1)
dim = dimsizes(mmt(:,1))
var_3d_summer=new((/30,12/),"float")
var_3d_cli=new((/12,30/),"float")
var_2d_spring=new(30,"float")
var_2d_summer=new(30,"float")
var_2d_autumn=new(30,"float")
var_2d_winter1=new(30,"float")
var_2d_winter2=new(30,"float")
var_3d_summer = onedtond(mmt(:,1),(/dim/12,12/)) ;ti qu chu ji jie
var_3d_summer!1="season"
var_3d_summer!0="time"
var_3d_cli= var_3d_summer(season|:,time|:)
var_2d_summer = dim_avg_n(var_3d_cli(5:7,:),0) ;JJA
var_2d_winter1 = dim_avg_n(var_3d_cli(0:1,:),0)
var_2d_winter2 = dim_avg_n(var_3d_cli(11,:),0)
var_2d_winter=(var_2d_winter1+var_2d_winter2)/2. ;DJF
var_2d_spring = dim_avg_n(var_3d_cli(2:4,:),0) ;MAM
var_2d_autumn = dim_avg_n(var_3d_cli(8:10,:),0) ;SON
zonal1 =dim_avg_n(var_3d_cli,0)
mmsu=dim_avg(var_2d_summer)
mmw=dim_avg(var_2d_winter)
mmsp=dim_avg(var_2d_spring)
mma=dim_avg(var_2d_autumn)
tt=dim_avg(zonal1)
yy1=new((/5,30/),"float")
yy1(0,:)=(var_2d_spring-mmsp)/(dim_stddev(var_2d_spring))
yy1(1,:)=(var_2d_summer-mmsu)/(dim_stddev(var_2d_summer))
yy1(2,:)=(var_2d_autumn-mma)/(dim_stddev(var_2d_autumn))
yy1(3,:)=(var_2d_winter-mmw)/(dim_stddev(var_2d_winter))
yy1(4,:)=(zonal1-tt)/(dim_stddev(zonal1))
x=new(30,"float")
x=ispan(1981,2010,1)
wks=gsn_open_wks("png","Ebianbei")
gsn_define_colormap(wks,"cyclic") ; Change color map
res = True
res@trXMinF = 1981
res@trXMaxF = 2010
res@tiYAxisString = "extent anomalies in NH "
res@xyLineColors = (/3,4,5,7,2/)
res@xyLineThicknessF = 2
res@xyDashPattern = 0
res@pmLegendDisplayMode = "Always"
res@pmLegendWidthF = 0.15
res@pmLegendHeightF = 0.15
res@lgPerimOn = False
res@pmLegendSide ="Right"
res@xyExplicitLegendLabels = (/"spring","summer","autumn","winter","annual"/)
plot= gsn_csm_xy(wks,x ,yy1,res)
end
|
|