爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 14363|回复: 10

[其他] 求助!NCL计算速度势出错!

[复制链接]

新浪微博达人勋

发表于 2013-10-4 23:27:53 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 hxyj 于 2013-10-4 23:35 编辑

晚上在用NCL自带的函数ilapsF求速度势的时候出错了。我的脚本如下:
;*************************************************
; wind_1.ncl
;*************************************************
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
;*************************************************
; open file and read in data: data are on a regular grid
;*************************************************

  f1    = addfile ("D:\paper\E\NCEP1\uwnd.mon.mean.nc", "r")
  f2    = addfile ("D:\paper\E\NCEP1\vwnd.mon.mean.nc", "r")

  t  = f1->time
  lev= f1->level
  lat= f1->lat
  lon= f1->lon

  u  = f1->uwnd(:,:,:,:)
  U=u*u@scale_factor + u@add_offset
  v  = f2->vwnd(:,:,:,:)
  V=v*v@scale_factor + v@add_offset
;*************************************************
; calculate divergence: use Wrap version to maintain meta data
;*************************************************
  div = uv2dvF_Wrap(U,V)           ; u,v ==> divergence
  print(dimsizes(div))
;*************************************************
; calculate divergence
;*************************************************

  chi = ilapsF(div,(/770,17/))

end


报错如下:
无标题.jpg
       经查,发现ilapsF 函数http://www.ncl.ucar.edu/Document/Functions/Built-in/ilapsf.shtml,(If zlap is a two dimensional array then zlmbda may be a constant. If zlap has 3 or more dimensions then zlmbda must be an array with the same dimensions as zlap (minus the rightmost two dimensions).)       我的数据是4维,分别如图所示,为770,17,73,144.根据提示(If zlap has 3 or more dimensions then zlmbda  must be an array with the same dimensions as zlap (minus the rightmost two dimensions)),所以我将zlmbda 设置为(/770,17/),但却出错。可能是理解有误。麻烦版主和各位高手帮忙解决。非常感谢。


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

新浪微博达人勋

发表于 2017-9-11 15:08:13 | 显示全部楼层
ilapsF是ilapsf的函数形式,该函数实现了逆拉普拉斯算子。函数的参数有两个,一个是zlap,代表施行了拉普拉斯计算的场变量(可以不含时间维,也可以包含);另一个参数是zlmbda决定了你求解的是Possion方程还是赫姆霍兹方程。zlmbda=0表示求解Possion方程,否则就是求解赫姆霍兹方程。对于用散度来求速度势问题,即经典的Possion方程问题,在调用该函数时,只需设置zlmbda=0即可。二维变量或者某个时刻的散度场,来求解该时刻的速度势,只需设置zlmbda为0;而对于时间变化的散度场时间序列,需要设置zlmbda为同样时间长度的0值序列,调用即可。
密码修改失败请联系微信:mofangbao
回复 支持 4 反对 0

使用道具 举报

新浪微博达人勋

发表于 2018-6-12 18:13:33 | 显示全部楼层
密码修改失败请联系微信:mofangbao
回复 支持 1 反对 0

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2013-10-8 10:27:33 | 显示全部楼层
求高手指点。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-11-25 17:38:01 | 显示全部楼层
chi不是能直接下载到数据么,为啥还要算呀
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-6-11 16:37:27 | 显示全部楼层
zglnice 发表于 2017-11-25 17:38
chi不是能直接下载到数据么,为啥还要算呀

请问在哪下载呀
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-6-11 16:37:36 | 显示全部楼层
zglnice 发表于 2017-11-25 17:38
chi不是能直接下载到数据么,为啥还要算呀

请问在哪下载呀
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-6-11 16:38:12 | 显示全部楼层
zglnice 发表于 2017-11-25 17:38
chi不是能直接下载到数据么,为啥还要算呀

请问在哪下载呀
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-6-12 18:13:00 | 显示全部楼层
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-6-12 18:13:22 | 显示全部楼层
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-6-12 18:13:26 | 显示全部楼层
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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