爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 8739|回复: 13

[其他] 请大家进来帮忙看一下,急用,谢谢大家!!!!

[复制链接]

新浪微博达人勋

发表于 2014-7-31 10:18:36 | 显示全部楼层 |阅读模式

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

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

x
这是我用来读取wrfout.nc的脚本,time是240,层数有100层,但是每次读数据时40层后他就没数据了,但是我实在看不出哪里错了,请大家帮帮忙


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"
load "$NCARG_ROOT/lib/ncarg/nclscripts/wrf/WRFUserARW.ncl"

begin
f      = addfile(“wrfout_d01_0001-01-01_00:00:00.nc","r")
w      = wrf_user_getvar(f,"QRAIN",-1)
xlat   = wrf_user_getvar(f,"XLAT",-1)
xlong  = wrf_user_getvar(f,"XLONG",-1)
times  = wrf_user_getvar(f,"times",-1)
ntimes = dimsizes(w(:,0,0,0))
wbt    = dimsizes(w(0,:,0,0))
wsn    = dimsizes(w(0,0,:,0))
wwe    = dimsizes(w(0,0,0,:))


out     = new((/wbt,ntimes/),"float",0)



do it = 0,ntimes-1
do bt = 0,wbt-1
chu = w(it,bt,0,0)
  yy  = 0
  xx  = 0
   do sn = 0,wsn-1
    do we = 0,wwe-1
     if(w(it,bt,sn,we).gt.chu) then
      chu = w(it,bt,sn,we)
       yy = sn
       xx = we
     end if
    end do
   end do
out(bt,it)= w(it,bt,yy,xx)*1000
print(it)
end do
end do
print(out)
fmtf    = ntimes + "f9.6"
opt     = True
opt@fout= "qrain101.txt"
write_matrix(out,fmtf,opt)
end


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

新浪微博达人勋

发表于 2014-7-31 10:39:04 | 显示全部楼层
不见得是程序错了,可能是数据格式里有不可识别的字符而程序终止了.
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-7-31 10:48:54 | 显示全部楼层
tmmiw 发表于 2014-7-31 10:39
不见得是程序错了,可能是数据格式里有不可识别的字符而程序终止了.

但是ncl 这个脚本的时候并没有提示任何错误或者是终止的信息
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-7-31 10:56:56 | 显示全部楼层
那你把qrain101.txt文件弄成个可变的,20层存一个文件,也许你的文件大了
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-7-31 11:02:37 来自手机 | 显示全部楼层
wbt值是多少?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-7-31 11:04:09 | 显示全部楼层

wbt值就是层数值,100
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-7-31 11:06:18 | 显示全部楼层
tmmiw 发表于 2014-7-31 10:56
那你把qrain101.txt文件弄成个可变的,20层存一个文件,也许你的文件大了

我试过只取50层到100层的数据,结果还是不行,它取不出值,默认为零,但是我画云的剖面图的时候,qrain的值直到300hpa都是有值的,就是起码到70层才会没有qrain的值
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-7-31 11:12:12 | 显示全部楼层
几十年不写fortran了,不太懂了,它读文件是方便但能力弱,用C语言就要好的多。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-7-31 11:15:45 | 显示全部楼层
tmmiw 发表于 2014-7-31 11:12
几十年不写fortran了,不太懂了,它读文件是方便但能力弱,用C语言就要好的多。

这个是用ncl编写的,不是用for编写的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-7-31 11:17:50 | 显示全部楼层
那我就更不懂了。我只是根据自己开发经验判断的。
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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