爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 9578|回复: 9

[其他] NCL_short2flt的疑问

[复制链接]

新浪微博达人勋

发表于 2015-11-14 21:19:14 | 显示全部楼层 |阅读模式

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

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

x
  各位好!我今天在使用EC的水汽资料时,使用了short2flt来转换函数,EC资料如下(offset省略):
short p55.162(time, latitude, longitude) ;
                p55.162:long_name = "Vertical integral of water vapour" ;
        short p71.162(time, latitude, longitude) ;
                p71.162:long_name = "Vertical integral of eastward water vapour flux" ;
        short p72.162(time, latitude, longitude) ;
                p72.162:long_name = "Vertical integral of northward water vapour flux" ;
        short p84.162(time, latitude, longitude) ;
                p84.162:long_name = "Vertical integral of divergence of moisture flux" ;

代码如下:
f=addfile("d:/data/ec.nc","r")
v=(/"p55.162","p71.162","p72.162","p84.162"/)
name=(/"wv","qu","qv","mf"/)
do i=0,3
var0=f->$v(i)$
var0:=short2flt(var0)
……
end do
  然而我发现只有第一个变量(wv)成功转换为float,而后三个都显示:
1.png
  而后来我画图也验证后面的变量并没有被转化(因为整层水汽通量竟然高达6000)。而有趣的是第一个变量water vapour转化成功,我想请问各位这是为什么呢?
此外我还想请问water vapour flux 和 moisture flux有什么区别呢?
谢谢大家!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-11-16 08:28:59 | 显示全部楼层

回帖奖励 +1 金钱

var0=f->$v(i)$
var0:=short2flt(var0)
第一次循环的时候var0被转变成float的变量覆盖了,他已经是float了,所以后面的循环里会提示你变量已经是float类型了
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-11-16 17:31:17 | 显示全部楼层
井中月 发表于 2015-11-16 08:28
var0=f->$v(i)$
var0:=short2flt(var0)
第一次循环的时候var0被转变成float的变量覆盖了,他已经是float ...

原来如此!谢谢了!
只顾着下面重新赋值忘了循环这一茬( ̄▽ ̄")
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-1-20 20:19:57 | 显示全部楼层

回帖奖励 +1 金钱

正好碰到这个问题,楼主不是用的short2flt转的吗
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-1-20 20:24:31 | 显示全部楼层
我的意思是我直接用short2flt    short2flt(f->p71.162是不对的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-10-25 15:45:44 | 显示全部楼层
timevigor 发表于 2016-1-20 20:24
我的意思是我直接用short2flt    short2flt(f->p71.162是不对的

抱歉这么久才看到
我用  zvar=short2flt(f2->hgt)    没有问题的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2022-5-18 15:39:40 | 显示全部楼层

回帖奖励 +1 金钱

timevigor 发表于 2016-1-20 20:24
我的意思是我直接用short2flt    short2flt(f->p71.162是不对的

我也是无法直接读取,该怎么处理呢
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2024-7-10 10:26:37 | 显示全部楼层

回帖奖励 +1 金钱

lily玲 发表于 2022-5-18 15:39
我也是无法直接读取,该怎么处理呢

请问你解决了嘛
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2024-7-10 10:37:33 | 显示全部楼层
lily玲 发表于 2022-5-18 15:39
我也是无法直接读取,该怎么处理呢

感觉不如getvar
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 成长值: 0
发表于 2024-7-11 14:49:23 | 显示全部楼层

回帖奖励 +1 金钱

{:eb334:}{:eb334:}
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

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