亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        NCL在數(shù)值預(yù)報(bào)產(chǎn)品分析及可視化中的應(yīng)用

        2015-05-29 12:41:51鄭艷萍
        電腦知識(shí)與技術(shù) 2015年10期
        關(guān)鍵詞:數(shù)據(jù)處理

        鄭艷萍

        摘要:相對(duì)于GrADS等氣象繪圖軟件,NCAR Command Language(簡(jiǎn)稱NCL)在數(shù)據(jù)處理及可視化方面優(yōu)勢(shì)明顯,故其用戶群數(shù)量不斷增加。為了更好地利用NCL工具為數(shù)值預(yù)報(bào)產(chǎn)品的解釋?xiě)?yīng)用服務(wù),為天氣預(yù)報(bào)和研究提供更實(shí)用的圖形產(chǎn)品服務(wù),從NCL的介紹、下載安裝、數(shù)據(jù)分析處理及可視化四個(gè)方面介紹了NCL在氣象業(yè)務(wù)中應(yīng)用。

        關(guān)鍵詞:NCL;氣象應(yīng)用;數(shù)據(jù)處理;圖形展示;數(shù)值預(yù)報(bào)

        中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)10-0093-03

        NCAR Command Language(簡(jiǎn)稱NCL)是美國(guó)國(guó)家大氣研究中心專為科學(xué)數(shù)據(jù)處理及可視化而設(shè)計(jì)的高級(jí)語(yǔ)言[1-2],尤其是在氣象數(shù)據(jù)分析處理方面優(yōu)勢(shì)明顯,故其用戶數(shù)量也不斷增加。相對(duì)于GrADS等繪圖軟件,NCL的優(yōu)勢(shì)不僅表現(xiàn)在繪圖更加細(xì)膩美觀,更表現(xiàn)在它強(qiáng)大的數(shù)據(jù)處理能力,它包含了氣象數(shù)據(jù)常用的分析方法,如樣條插值、經(jīng)驗(yàn)正交函數(shù)分解(EOF)、波譜分析等,此外,還可與Fortran、Shell進(jìn)行混合編程,使得程序更加簡(jiǎn)潔高效,使用更加方便。這些優(yōu)勢(shì)使得NCL成為氣象數(shù)據(jù)分析展示軟件的后起之秀[3]。

        數(shù)值預(yù)報(bào)產(chǎn)品是天氣預(yù)報(bào)的重要參考依據(jù)之一[4-5],對(duì)數(shù)值預(yù)報(bào)產(chǎn)品的業(yè)務(wù)應(yīng)用需求也越來(lái)越高。數(shù)值預(yù)報(bào)產(chǎn)品的數(shù)據(jù)分析及圖形化就必不可少,針對(duì)這一迫切需求,本文利用NCL軟件進(jìn)行數(shù)值預(yù)報(bào)產(chǎn)品的診斷分析及圖形化。主要介紹了NCL的安裝、下載、編程思路,及在氣象業(yè)務(wù)應(yīng)用中的兩部分關(guān)鍵技術(shù):數(shù)據(jù)處理功能及可視化功能。

        1 NCL軟件的下載、安裝及運(yùn)行

        NCL可以在AIX、Linux、Mac OS X 等系統(tǒng)上安裝運(yùn)行,對(duì)于Windows用戶,可安裝Cygwin/X軟件后在這個(gè)軟件環(huán)境中運(yùn)行。NCL的官方下載地址:http://www.earthsystemgrid.org,注冊(cè)之后,根據(jù)用戶自身的系統(tǒng)選擇相應(yīng)的NCL版本。NCL在Unix系統(tǒng)上的安裝不需要編譯,只需要三個(gè)步驟:

        1) 解壓安裝包

        打開(kāi)終端,將安裝包解壓到/home/yourname/ncl目錄下:

        # cd /home/yourname/ncl

        # tar–xvfncl_ncarg-6.1.2.Linux_Debian6.0_x86_64_nodap_gcc445.tar.gz

        2) 設(shè)置環(huán)境變量

        用“echo $SHELL”返回當(dāng)前系統(tǒng)所用的shell,若為C-shell(csh)則設(shè)置環(huán)境變量:

        setenv NCARG_ROOT /home/yourname/ncl

        setenv PATH $PATH:$NCARG_ROOT/bin

        若為bash或ksh,則添加環(huán)境變量:

        export NCARG_ROOT=/home/yourname/ncl

        export PATH=$PATH:$NCARG_ROOT/bin

        保存該文件后,運(yùn)行source命令使環(huán)境變量生效。

        3) 檢驗(yàn)安裝是否成功

        安裝好后,運(yùn)行NCL自帶的例子,檢驗(yàn)下NCL是否已正確安裝:

        #cd /usr/ncl/lib/ncarg/nclex/xyplot

        #ncl xy04n.ncl

        若出現(xiàn)一組平面曲線圖則說(shuō)明測(cè)試通過(guò)。

        更簡(jiǎn)便的測(cè)試可利用NCL提供了一個(gè)腳本程序“ng4ex”,運(yùn)行一系列的范例,# ng4ex gsun01n,若彈出一個(gè)圖形窗口顯示XY坐標(biāo)圖,則說(shuō)明安裝成功。

        NCL可直接在終端用命令行進(jìn)行簡(jiǎn)單的測(cè)試,復(fù)雜的數(shù)據(jù)處理和圖形化則用批處理腳本來(lái)實(shí)現(xiàn)。NCL腳本的編程思路大致分為步:1)加載NCARG庫(kù)函數(shù)及共享對(duì)象,提供繪圖及運(yùn)算接口。2)讀入需要處理的數(shù)據(jù)。3)打開(kāi)一個(gè)繪圖窗口。4)設(shè)置窗口圖形的屬性,包括繪圖類型、線條顏色、底圖等一系列屬性。5)數(shù)據(jù)可視化。在此不作詳細(xì)介紹。

        2 NCL數(shù)據(jù)處理功能的業(yè)務(wù)應(yīng)用

        數(shù)據(jù)的加工處理是數(shù)值預(yù)報(bào)產(chǎn)品的解釋?xiě)?yīng)用的重要部分。NCL不僅支持多種數(shù)據(jù)數(shù)據(jù)格式的基本數(shù)學(xué)運(yùn)算,如求平均、求最值、三角函數(shù)運(yùn)算等,還具有完整的氣象分析算法模塊,并且具有Fortran外部代碼的接口,支持用戶自行編寫(xiě)的算法接入。這三大塊構(gòu)成了NCL數(shù)據(jù)處理的強(qiáng)大功能,為數(shù)值預(yù)報(bào)產(chǎn)品的診斷分析提供有效的支持。與傳統(tǒng)的圖形化工具相比,NCL在數(shù)據(jù)方面更為簡(jiǎn)潔高效,靈活多變。

        2.1 NCL內(nèi)置函數(shù)處理數(shù)據(jù)的方法

        NCL支持多種數(shù)據(jù)格式的讀寫(xiě)操作:NetCDF3/4,HDF4,HDF4-EOS,HDF5,HDF5-EOS,GRIB-1,GRIB-2,shapefile,ASCII和CCM History Tape format 格式,滿足了不同用戶對(duì)數(shù)據(jù)格式讀寫(xiě)的需求。目前,數(shù)值預(yù)報(bào)產(chǎn)品種類豐富,不同的數(shù)值預(yù)報(bào)有各自不同的數(shù)據(jù)存儲(chǔ)格式,為了能夠?qū)v史及實(shí)時(shí)資料完整、有序的存儲(chǔ)并提供業(yè)務(wù)和研究應(yīng)用,我省統(tǒng)一采用標(biāo)準(zhǔn)化的數(shù)據(jù)格式NetCDF存儲(chǔ)數(shù)值預(yù)報(bào)數(shù)據(jù)[6]。

        NCL內(nèi)部提供了不同的數(shù)據(jù)處理方法:數(shù)組運(yùn)算、基本數(shù)學(xué)運(yùn)算和完整的氣象分析算法模塊[2]。其中氣象分析算法是NCL數(shù)據(jù)處理的一大特色,它包含了經(jīng)驗(yàn)正交函數(shù)展開(kāi)法(EOF),濾波(Filters),小波分析(Wavelets)等常用的氣象分析方法。此外,由于NCL是開(kāi)源軟件,用戶也可使用NCL語(yǔ)言編寫(xiě)算法,嵌入軟件使用。下面以站點(diǎn)到格點(diǎn)的插值為例介紹NCL的數(shù)據(jù)處理流程,原始數(shù)據(jù)為廣東省自動(dòng)站溫度temp.csv,ASCII碼格式,數(shù)據(jù)如下圖所示:

        1)讀取數(shù)據(jù)

        讀入數(shù)據(jù)之后,將不同的要素分開(kāi)并轉(zhuǎn)換成需要的數(shù)據(jù)類型(部分代碼):

        fin = asciiread(“./temp.csv",nstn,"string")

        delim = ","

        sname = str_get_cols(str_get_field(fin,1,delim),1,5)

        slon = stringtofloat(str_get_cols(str_get_field(stn,2,delim),1,8))

        slat =......

        2)插值計(jì)算

        首先根據(jù)原始數(shù)據(jù)的密度,定義插值網(wǎng)格的分辨率為0.001°x0.001°:

        resolution=0.001

        nx = floattoint((max(slon)-min(slon))/resolution)

        ny = floattoint((max(slat)-min(slat))/resolution)

        glon = fspan(min(slon),(min(slon)+(nx+1)*resolution),nx)

        glat = fspan(min(slat),(min(slat)+(ny+1)*resolution),ny)

        定義好目標(biāo)網(wǎng)格后,調(diào)用NCL內(nèi)部插值函數(shù)進(jìn)行插值計(jì)算:

        gval = cssgrid(slat,slon,sval,glat,glon)

        3)結(jié)果輸出為NetCDF格式

        首先打開(kāi)一個(gè)輸出文件:

        fout= addfile ("./temp_out.nc", "c")

        聲明輸出文件的格式定義模式:

        setfileoption("nc","Format","NetCDF4Classic")

        然后定義輸出文件的全局屬性、坐標(biāo)范圍、變量維數(shù)等信息,最后輸出插值結(jié)果:

        fout->lat= (/glat/)

        fout->lon = (/glon/)

        fout->temp= (/gval/)

        詳細(xì)的NetCDF文件定義過(guò)程請(qǐng)參考NCL官網(wǎng),在此不做詳述。

        2.2外部代碼接口處理數(shù)據(jù)的方法

        除了運(yùn)用內(nèi)部算法進(jìn)行數(shù)據(jù)處理外,NCL還提供了Fortran外部代碼接口,用戶可通過(guò)這個(gè)接口直接在NCL腳本內(nèi)部調(diào)用Fortran代碼。步驟也很簡(jiǎn)單,例如有代碼thse.f包含計(jì)算假相當(dāng)位溫的算法:CAL_THSE(PLEV,STC,STD,NLEV,NSTN,THSE)

        首先用NCL的WRAPIT將Fortran程序編譯成共享對(duì)象:

        #WRAPIT thse.f

        生成共享對(duì)象thse.so,然后在NCL腳本內(nèi)部加載該共享:

        external FORTRAN “../thse.so”

        調(diào)用thse.so計(jì)算:

        FORTRAN::CAL_THSE(plev,stc,std,nlev,nstn,thse)

        至此調(diào)用外部代碼完成計(jì)算。需要注意的是NCL與Fortran之間的參數(shù)傳遞,由于NCL與Fortran的數(shù)組排列方式與數(shù)據(jù)類型有差異,數(shù)組定義時(shí)要特別小心。兩者之間的數(shù)組對(duì)應(yīng)關(guān)系如下圖所示:

        3 NCL可視化功能的業(yè)務(wù)應(yīng)用

        傳統(tǒng)的氣象分析中,一般先用Fortran等工具先進(jìn)行數(shù)據(jù)處理后,再輸入繪圖軟件顯示。NCL將數(shù)據(jù)處理與可視化相結(jié)合,彌補(bǔ)了傳統(tǒng)處理方式要分兩步走的不足,為數(shù)值預(yù)報(bào)的分析展示帶來(lái)了極大的便利。NCL的可視化功能同樣不遜色于數(shù)據(jù)處理功能,為數(shù)值預(yù)報(bào)產(chǎn)品的展示提供有力支持。

        3.1 NCL可繪制的圖形類型

        NCL支持多種圖形格式:。且擁有超過(guò)40個(gè)的繪圖模板,這些模板包括XY坐標(biāo)圖、等值線圖、矢量圖、流線圖等,豐富的繪圖模板滿足了氣象數(shù)據(jù)多樣化的圖形展示方式,為氣象工作者提供更多選擇。圖形類型分類如下表所示:

        同時(shí),NCL還提供了豐富的色彩庫(kù)[8],定義了上百種顏色搭配表供用戶選擇,顏色搭配表種類豐富、色彩搭配科學(xué)美觀,為氣象數(shù)據(jù)的可視化帶來(lái)美感。我省利用NCL豐富的繪圖模板及色彩庫(kù),得到了一系列美觀實(shí)用的數(shù)值預(yù)報(bào)產(chǎn)品,如下圖所示。

        3.2 NCL與ImageMagick的聯(lián)合應(yīng)用

        除了自身豐富的可視化處理,NCL還可與ImageMagick(簡(jiǎn)稱IM)圖像處理軟件聯(lián)合使用,極大得提高了圖形處理能力。IM是強(qiáng)大的圖片處理工具,可對(duì)圖片進(jìn)行縮放、剪切、疊加等[7]。NCL可有效利用IM的功能,實(shí)現(xiàn)圖片的再加工:圖片疊加、做成動(dòng)畫(huà)等。本文利用IM的疊加能力對(duì)氣象場(chǎng)met.png和地圖map.png進(jìn)行疊加,代碼如下:

        system("composite -compose Multiply -gravity center met.png map.png met_map.png")

        這樣避免了批量畫(huà)圖時(shí)重復(fù)畫(huà)地圖消耗過(guò)多時(shí)間,不僅可以大幅提高出圖效率,又方便用戶根據(jù)需要重新設(shè)計(jì)地圖,比如加入地形高度信息等。

        如果需要生動(dòng)地表現(xiàn)氣象要素的變化過(guò)程,可按時(shí)間順序?qū)庀笠貓D做成動(dòng)畫(huà),其中delay為每幅圖的時(shí)間間隔,pngname為一組圖片,animation為輸出的動(dòng)畫(huà),代碼如下:

        system("convert -delay 100 pngname.ps animation.gif")

        4 結(jié)論

        NCL是集數(shù)據(jù)分析處理和可視化于一身的高級(jí)語(yǔ)言,利用其基本數(shù)學(xué)運(yùn)算、氣象分析算法模塊及其Fortran接口,實(shí)現(xiàn)了對(duì)數(shù)值預(yù)報(bào)產(chǎn)品的分析加工,計(jì)算診斷分析物理量,進(jìn)行插值計(jì)算等,進(jìn)一步挖掘了數(shù)值預(yù)報(bào)產(chǎn)品的價(jià)值;利用其豐富的繪圖模板、色彩庫(kù)及ImageMagick的聯(lián)合使用,使可視化方式更加靈活多變,繪圖速度更加快捷。目前,基于NCL平臺(tái)的數(shù)值預(yù)報(bào)產(chǎn)品分析及可視化系統(tǒng)已業(yè)務(wù)化運(yùn)行,每日為預(yù)報(bào)員提供上萬(wàn)張數(shù)值預(yù)報(bào)產(chǎn)品再分析圖,為預(yù)報(bào)預(yù)測(cè)提供有力的保障。

        參考文獻(xiàn):

        [1] National Center for Atmospheric Reseach.NCAR Command Language Mini Graphics Manual[Z].Document Version 1.3,NCL 6.0.0,march ,2011.

        [2] National Center for Atmospheric Research.NCAR Command Language Mini-Language Reference Manual[Z].Document Version 1.1.10,NCL 6.1.2,September,2014.

        [3] 王繼竹,王詠青,李春虎.NCL在氣象數(shù)據(jù)圖形化中的應(yīng)用[J].山東氣象,2007,27(109):33-36.

        [4] 林良勛, 馮業(yè)榮, 黃忠, 等.廣東省天氣預(yù)報(bào)技術(shù)手冊(cè)[ M]. 北京:氣象出版社, 2006.

        [5] 溫之平,吳乃庚,馮業(yè)榮,等.定量診斷華南春旱的形成機(jī)理[J].大氣科學(xué), 2007,31(6):1223-1236.

        [6] 李永生,劉修偉,楊玉紅.氣象大數(shù)據(jù)跨平臺(tái)分析與應(yīng)用技術(shù)研究[J].電腦知識(shí)與技術(shù),2013,9(31):6943-6947.

        [7]ImageMagick:Convert,Edit,Or Compose Bitmap Images[EB/OL]. http://www.imagemagick.org/.

        [8]Color Table Gallery[EB/OL].http://www.ncl.ucar.edu/Document/Graphics/color_table_gallery.shtml.

        猜你喜歡
        數(shù)據(jù)處理
        驗(yàn)證動(dòng)量守恒定律實(shí)驗(yàn)數(shù)據(jù)處理初探
        認(rèn)知診斷缺失數(shù)據(jù)處理方法的比較:零替換、多重插補(bǔ)與極大似然估計(jì)法*
        基于低頻功率數(shù)據(jù)處理的負(fù)荷分解方法
        能源工程(2021年6期)2022-01-06 02:04:38
        ILWT-EEMD數(shù)據(jù)處理的ELM滾動(dòng)軸承故障診斷
        ADS-B數(shù)據(jù)處理中心的設(shè)計(jì)與實(shí)現(xiàn)
        MATLAB在化學(xué)工程與工藝實(shí)驗(yàn)數(shù)據(jù)處理中的應(yīng)用
        基于希爾伯特- 黃變換的去噪法在外測(cè)數(shù)據(jù)處理中的應(yīng)用
        大數(shù)據(jù)處理中基于熱感知的能源冷卻技術(shù)
        Matlab在密立根油滴實(shí)驗(yàn)數(shù)據(jù)處理中的應(yīng)用
        我國(guó)首個(gè)“突發(fā)事件基礎(chǔ)數(shù)據(jù)處理標(biāo)準(zhǔn)”發(fā)布
        欧美日本精品一区二区三区| 日本一区二区三区高清视| 国产av一区二区三区天美| 3亚洲日韩在线精品区| 黄色网页在线观看一区二区三区| 中文字幕人妻乱码在线| 国产免费操美女逼视频| 国产在线播放一区二区不卡| 97色偷偷色噜噜狠狠爱网站| 国产精品丝袜久久久久久不卡| 久久久无码一区二区三区| 国产精品成人午夜久久| 无码成年性午夜免费网站蜜蜂| 国产精品亚洲在钱视频| 久久亚洲中文字幕精品二区 | 国产精品日本天堂| 在线免费观看亚洲毛片| 久久久人妻精品一区bav| 亚洲精品中文字幕乱码三区| 搡老熟女中国老太| 初高中生精品福利视频| 欧美中出在线| 国产精品亚洲最新地址| 蜜桃91精品一区二区三区| 三级做a全过程在线观看| 亚洲色偷拍区另类无码专区| 国产精品 视频一区 二区三区| 亚洲国产成人AⅤ片在线观看| 中文字幕日韩人妻在线| 91l视频免费在线观看| 人人爽人人爽人人片av| 熟妇人妻av无码一区二区三区| 精品免费福利视频| 女同另类激情在线三区| 亚洲第一大av在线综合| 国产精品办公室沙发| 国产成年女人特黄特色毛片免| 国产人在线成免费视频麻豆| 国产亚洲精品综合99久久| 亚洲国产国语对白在线观看| 国产精品国三级国产av|