为了与观测的风向风速进行比较。
; These files are loaded by default in NCL V6.2.0 and newer
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"
begin
filename = "/NJ/read_fnl_loc.csv"
values_1d = asciiread(filename,-1,"string")
ncols = dimsizes(str_split(values_1d(0),","))
nrows = dimsizes(values_1d)
values_2d = onedtond(asciiread(filename,-1,"integer"),(/nrows,ncols/))
;;print(values_2d)
;;;-------------------------------Write a new array-------------------------------;;;;
result = new((/nrows,ncols+2/),float)
path="/NJ/"
h_pick=(/"h10.csv","h20.csv","h30.csv","h40.csv","h50.csv","h80.csv","h100.csv"/)
;;;----------------------------------Read fnl---------------------------------------------;;;;;
files = systemfunc("ls /NJ/fnl_2020_4/fnl_202001*.grib2")
f = addfiles(files,"r")
HH = f[0]->lv_HTGL8 ;;;七个数 10,20,30,40,50,80,100
; print(HH)
; exit()
;;;;--------------------------------Cycle---------------------------------------------------;;;;;
do multih = 0,6 ;;;;; Different from python .
Height = HH(multih)
do i=0,20
lon_find = values_2d(i,1)
lat_find = values_2d(i,0)
u = f[i]->UGRD_P0_L103_GLL0({Height},{lat_find},{lon_find})
v = f[i]->VGRD_P0_L103_GLL0({Height},{lat_find},{lon_find})
result(i,0)=u
result(i,1)=v
result(i,2)=wind_speed(u, v)
result(i,3)=wind_direction(u, v,1)
end do
;;;;-------------------------------Write result--------------------------------------;;;;
uu=result(:,0)
vv=result(:,1)
ws=result(:,2)
wd=result(:,3)
alist=[/uu,vv,ws,wd/]
csv_filename = path+h_pick(multih) ;;;; "+" to cat strs.
system("rm -rf " + csv_filename)
format = "%g,%g,%g,%g"
write_table(csv_filename, "a", alist, format)
end do
end
网友评论