爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 4966|回复: 2

[作图] 求助!画整层水汽通量及散度出错

[复制链接]

新浪微博达人勋

发表于 2019-5-14 20:31:58 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
我想画1961-2016年的全国整层水汽通量和散度的分布图,以下是部分程序,比湿只有8层,所以人为添加了基几层然后设置为零,但是还是出现错误,积分函数那里出错:ier=-999,不知哪位大神能指点迷津,困扰很久了,求解答



79dc344fa2ffd65de59476c04028216.png

itimes = 196101
itimee = 201612

f1 = addfile("/cygdrive/D/paperxu/data/pres.sfc.mon.mean.nc","r")
f2 = addfile("/cygdrive/D/paperxu/data/uwnd.mon.mean.nc","r")
f3 = addfile("/cygdrive/D/paperxu/data/vwnd.mon.mean.nc","r")
f4 = addfile("/cygdrive/D/paperxu/data/shum.mon.mean.nc","r")

lat = f2->lat
lon = f2->lon
lev = f2->level
nlat = dimsizes(lat)
nlon = dimsizes(lon)
nlev = dimsizes(lev)

time = f1->time
YYYYMM = cd_calendar(time,-1)
ist = ind(itimes.eq.YYYYMM)
ied = ind(itimee.eq.YYYYMM)

ps = f1->pres(ist:ied,:,:)
ps = ps * 0.01
u = f2->uwnd(ist:ied,:,:,:)
v = f3->vwnd(ist:ied,:,:,:)
q = f4->shum(ist:ied,:,:,:)
q = q * 1000.0
;printVarSummary(u)
;printVarSummary(v)

ps1 = month_to_season(ps,"SON")
u1 = month_to_season(u,"SON")
v1 = month_to_season(v,"SON")
q1 = month_to_season(q,"SON")
;printVarSummary(u1)
;printVarSummary(v1)


;*********************************************
    linlog = 1
    p  = (/ 1000.,925.,850.,700.,600.,500., 400.,300.,250.,200.,150.,100., 70.,50.,30.,20.,10./)

    pbot   = 1100.                                             
    ptop   = 300.

    qu=q1*u1(:,{1000:300},:,:)
    qv=q1*v1(:,{1000:300},:,:)
    copy_VarCoords(u1, qu)
    copy_VarCoords(v1, qv)
    nyear = 56
    qu_new = new((/nyear,nlev,nlat,nlon/),float)
    qv_new = new((/nyear,nlev,nlat,nlon/),float)

    qu_new(:,0:7,:,:) = qu
    qu_new(:,8:16,:,:) = 0.0

    qv_new(:,0:7,:,:) = qv
    qv_new(:,8:16,:,:) = 0.0
    copy_VarCoords(u1, qu_new)
    copy_VarCoords(u1, qv_new)
    uu = vibeta (p,qu_new(time|:,lat|:,lon|:,level|:),linlog,ps1,pbot,ptop)/9.8  ; retLIuns u(time,lat,lon)
    vv = vibeta (p,qv_new(time|:,lat|:,lon|:,level|:),linlog,ps1,pbot,ptop)/9.8  

    uuclimate = dim_avg_n_Wrap(uu, 0)
    vvclimate = dim_avg_n_Wrap(vv, 0)
    copy_VarCoords(u1(0,0,:,:), uuclimate)
    copy_VarCoords(u1(0,0,:,:), vvclimate)

    Div = uv2dv_cfd(uu, vv, lat, lon, 2)
    Div = dim_rmvmean_n_Wrap(Div, 0)
    Div = Div*10e5
    copy_VarCoords(u1(:,0,:,:), Div)

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2019-5-16 16:56:47 | 显示全部楼层
积分时缺测值太多了,同一个点,垂直方向上至少有三个数据不是缺测,你可以把缺测值设为0,反之积分时不影响
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-7-16 13:10:14 | 显示全部楼层
请问楼主画出了整层水汽通量吗?
想问一下为什么要q = q * 1000.0和ps = ps * 0.01,
还有算整层的水汽通量一定要算这个嘛?
ps1 = month_to_season(ps,"SON")
u1 = month_to_season(u,"SON")
v1 = month_to_season(v,"SON")
q1 = month_to_season(q,"SON"){:eb303:}
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表