符鳳平,吳哲紅,高如玉
(貴州省安順市氣象局,貴州 安順 561000)
精細化預報的自動檢驗與技巧評分系統(tǒng)
符鳳平,吳哲紅,高如玉
(貴州省安順市氣象局,貴州 安順 561000)
基于局域網和省—地氣象光纖通信網,使用SQL Server數(shù)據(jù)庫和相關編程技術,以08時次精細化預報為例,分別實現(xiàn)對本地預報和中央氣象臺預報的自動檢驗與技巧評分。系統(tǒng)由后臺和前臺兩部分程序組成,后臺程序基于C/S方式,分別實現(xiàn)本地預報、中央氣象臺預報、本地天氣實況的自動入庫與補調。前臺程序基于B/S方式,實現(xiàn)本地預報、中央氣象臺預報、本地天氣實況、檢驗結果與技巧評分等信息的顯示與查詢、自動統(tǒng)計與輸出功能。系統(tǒng)自投入業(yè)務運行后,較大地滿足了天氣預報業(yè)務和管理需求,對于提高精細化預報質量具有一定的積極意義。
精細化預報;自動檢驗;技巧評分
隨著經濟社會的不斷發(fā)展,對天氣預報的精細化程度需求愈來愈高。由于以往獲取氣象資料的途徑有限,在精細化天氣預報質量方面,本地預報質量考核一直參考中國氣象局和貴州省氣象局的檢驗評分結果,當檢驗評分成績不理想時,難以查明導致預報質量不高的真正原因,難以對每個預報員的預報質量進行較為詳細的檢驗與評分。為了充分利用現(xiàn)有網絡資源以及實時獲取的地面氣象自動站資料,進一步提高本地精細化天氣預報質量,提高天氣預報準確率,及時掌握值班預報員的預報質量,實現(xiàn)對精細化預報的自動檢驗與評分,已成為天氣預報業(yè)務與管理方面的迫切需求。程序設計采用C/S和B/S兩種軟件體系結構,最終實現(xiàn)對精細化預報的自動檢驗與技巧評分。由于面向用戶的前端程序采取B/S工作模式,維護與操作較為簡便,適合使用對象較廣,對于進一步提高天氣預報質量和預報準確率,具有一定的積極意義。
2.1 技術方法
基于省—地—縣氣象光纖通信網和局域網,以Windows 7操作系統(tǒng)為開發(fā)平臺,采用C/S和B/S兩種方式,由后臺和前臺兩部分程序組成。后臺程序基于C/S工作模式,使用VB編程語言和SQL Server數(shù)據(jù)庫技術,實現(xiàn)本地精細化預報、中央氣象臺精細化預報與天氣實況的自動入庫與補調。前臺程序基于B/S工作模式,使用ASP開發(fā)環(huán)境、JavaScript腳本語言、SQL Server數(shù)據(jù)庫等技術,實現(xiàn)精細化預報檢驗結果的顯示與查詢、統(tǒng)計與輸出等功能。
2.2 主要結構
分為后臺和前臺兩部分,后臺模塊主要實現(xiàn)本地預報、中央氣象臺預報、天氣實況等資料的自動入庫。前臺模塊主要實現(xiàn)預報檢驗結果的顯示與查詢、統(tǒng)計與報表輸出等功能。系統(tǒng)主要結構見圖1,其中“天氣現(xiàn)象”部分主要實現(xiàn)前后12 h本地預報、中央臺預報、降水實況、本地預報準確率(Ts)、中央臺預報準確率(Ts)等檢驗對比結果的顯示與查詢。
2.3 主要實現(xiàn)功能
2.3.1 后臺入庫 后臺入庫程序主要實現(xiàn)各時次精細化預報(含本地預報和中央氣象臺預報)、本地實況等資料的自動入庫與補調,入庫要素包含最高氣溫、最低氣溫、前后12 h天氣現(xiàn)象、中央氣象臺24 h降水預報以及本地24 h降水實況等。
2.3.2 前端Web應用 此部分主要實現(xiàn)預報檢驗結果的Web顯示與查詢、自動統(tǒng)計與Excel報表輸出等功能,檢驗評分對象為最高氣溫、最低氣溫、天氣現(xiàn)象。檢驗評分結果的計算主要依據(jù)“貴州省氣象局關于精細化預報質量檢驗與評分的規(guī)定”,生成結果按時段進行統(tǒng)計,統(tǒng)計信息可直接導入Excel報表文件,表中主要包含本地預報平均絕對誤差、中央氣象臺預報平均絕對誤差、單站技巧評分值和綜合技巧評分值(簡稱SST)等結果。

圖1 系統(tǒng)主要結構
3.1 后臺入庫
3.1.1 數(shù)據(jù)庫結構描述 采取SQL Server數(shù)據(jù)庫,數(shù)據(jù)庫命名為as_aws,表名為jxyb,一共包含16個字段,其結構見表1。
3.1.2 主要流程 入庫程序的設計主要基于省地氣象光纖通信網和局域網,使用ADODC控件鏈接SQL Server數(shù)據(jù)庫,實現(xiàn)本地預報、中央臺預報、天氣實況等資料的自動入庫,入庫要素包含最高氣溫、最低氣溫、前后12 h的天氣現(xiàn)象等。其主要流程見圖2。

表1 jxyb表結構

圖2 數(shù)據(jù)入庫流程
3.1.3 預報數(shù)據(jù)入庫 本地預報和中央臺預報入庫數(shù)據(jù)分別來源于本地業(yè)務機和省級服務器。本地預報文件名為Z_SEVP_C_BFAN_YYYYMMDDhhmmss_P_RFFC-SPCC-YYYYMMDDhhmm-FFFxx.TXT,中央臺預報文件名為YYYYMMDDHH.bgy。根據(jù)“全國城市精細化天氣預報產品文件格式”規(guī)定,每站24 h預報結果中第11、12組數(shù)據(jù),即為最高氣溫、最低氣溫,每站12 h、24 h的預報結果中第19組數(shù)據(jù),即為前后12 h天氣現(xiàn)象。
3.1.4 天氣實況入庫 后臺程序通過讀取存放在省級服務器上的長Z文件,自動獲取08時、20時天氣實況。從08時實況中讀出24 h最高最低氣溫、24 h降水、后12 h降水量等資料,從20時實況中讀出前12 h降水量,然后將獲取的各要素值寫入SQL Server數(shù)據(jù)庫。
3.2 前端Web應用
3.2.1 檢驗結果的顯示
①最高氣溫、最低氣溫
從數(shù)據(jù)庫中讀取預報與實況的最新記錄日期,將此作為參數(shù),分別計算出前1 d和后1 d的具體日期,然后使用參數(shù)傳遞命令Request.QueryString即可獲取前后日期,實現(xiàn)精細化預報、天氣實況及檢驗結果的自動瀏覽。為了簡略程序代碼,主頁顯示、前后天數(shù)的調用等3個ASP文件中的顯示均使用“#include file”語句調用同一個文件[1]。如最高氣溫的檢驗結果見圖3。

圖3 最高氣溫檢驗結果
本地預報、中央臺預報、當日實況的Web顯示與處理方法相同,在讀取資料入庫或進行Web網頁顯示前,需要進行一定的格式轉換。為避免在數(shù)值換算或格式轉換過程中出現(xiàn)問題,入庫前首先使用Isnumeric函數(shù)對其類型是否為數(shù)值進行判斷,然后在Web網頁顯示前使用Formatnumber函數(shù)進行格式輸出。進行顯示前,首先判斷檢索數(shù)據(jù)庫得出的結果是否為數(shù)值,若為數(shù)值,則將讀出的數(shù)據(jù)使用Formatnumber((rs1.Fields.Item("Tmax_本地預報").Value),1,-1)命令進行格式輸出,否則將該值直接顯示。
本地預報誤差和中央臺預報誤差的顯示與處理方法也一樣。如計算本地最高氣溫誤差時,首先判斷本地最高氣溫值和當日最高氣溫實況值是否均為數(shù)值,若均為數(shù)值,則使用Formatnumber((Y_bd*10-Y_sk*10)*0.1,1,-1)命令進行格式輸出,否則將本地誤差使用字符串“////”直接顯示。計算對比結果時,首先判斷本地誤差和中央臺誤差否均為數(shù)值,若均為數(shù)值,則使用Formatnumber((ABS(bdwc)*10-ABS(zywc)*10)*0.1,1,-1)命令進行格式輸出,否則將對比結果使用字符串“////”直接顯示。
為了更直觀地掌握本地和中央臺的預報情況,對計算出來的本地誤差、中央臺誤差、對比結果,根據(jù)其值使用不同顏色標注顯示。對于本地和中央臺預報誤差,根據(jù)其絕對值是否≤2,使用不同顏色標注顯示。若≤2,則用綠顏色標注顯示,若>2,用紅顏色標注顯示。而對于本地和中央臺的預報對比結果,在對比結果計算出來后,根據(jù)其絕對值是否≤0,若≤0,則用綠顏色標注顯示,若>0,用紅顏色標注顯示。
②天氣現(xiàn)象
主要顯示中央臺24 h預報和降水實況,以及前后12 h的本地預報、中央臺預報、降水實況以及預報準確率(Ts)。與最高最低氣溫的檢驗結果顯示一樣,需事先從數(shù)據(jù)庫中讀取最新記錄日期,將此作為參數(shù),分別計算出前1 d和后1 d的具體日期,然后使用參數(shù)傳遞命令Request.QueryString即可獲取前后日期,實現(xiàn)對天氣現(xiàn)象的自動瀏覽。其顯示界面見圖4。

圖4 天氣現(xiàn)象檢驗結果
本地預報和中央臺預報的結果顯示均已從預報代碼轉換為中文形式,如預報代碼為2,則結果顯示為“陰天”。預報Ts結果參考的計算規(guī)則為:首先判斷預報是否有雨(即判斷預報代碼是否>2,>2則代表預報有雨),若有雨,再判斷降水實況。若實況有雨,則Ts為100,否則Ts為0。若預報無雨,實況有雨,則Ts為0,否則為100。
3.2.2 檢驗結果的查詢 在顯示界面的下方(見圖4)嵌入文本域、列表2個控件,文本域控件實現(xiàn)日期選擇,列表控件主要實現(xiàn)日期選擇。同時,將2個控件加入1個表單中,表單提交使用post方式,使用Request.Form命令分別獲取表單中的控件值,如獲取日期使用命令Request.Form("select_date"),其中select_date為日期控件名稱。然后,使用Dateserial函數(shù)對獲取的日期文本域表單值進行轉換,即可取得具體的日期。獲取到具體日期后,即可從數(shù)據(jù)庫中查詢到相應的數(shù)據(jù)。
3.2.3 統(tǒng)計與報表輸出 主要實現(xiàn)最高、最低氣溫檢驗統(tǒng)計結果的自動輸出,可選擇單站或所有站,輸出格式為Excel文件類型,對話框提示是否保存或是否打開。寫入Excel文件前,首先定義好表格格式,再先后寫入需要輸出的結果名稱和對應值。表格格式主要作以下定義:定義頁面使用字符集為國標漢字碼gb2312,網頁輸出類型為Excel表格,輸出的Excel表格文件名,Excel表格的單元格類型為文本。
向Excel單元格填入檢驗結果時,對于不需作格式轉換的字段,直接將計算結果填入Excel單元格。需作格式轉換的字段,分別使用Isnumeric函數(shù)和formatnumber函數(shù)判斷其內容類型和格式化計算輸出。輸出內容主要包含:本地平均絕對誤差、中央臺平均絕對誤差、技巧評分以及綜合技巧評分值。平均絕對誤差的計算,是首先將每天的誤差(如本地預報誤差)取絕對值,然后對統(tǒng)計時段內每天的絕對誤差進行平均。輸出的Excel文件內容見圖5。

圖5 最高氣溫檢驗結果
技巧評分結果的計算,主要參考《貴州省短期天氣指導預報及市級技巧評分方案》,根據(jù)此方案,最高(最低)溫度預報技巧評分參考公式為:
其中,SST為最高(最低)溫度預報技巧評分,TMAEN為中央氣象臺指導預報最高(最低)溫度預報平均絕對誤差,TMAEF為市(州)氣象臺分縣城鎮(zhèn)預報最高(最低)溫度預報平均絕對誤差。
綜合技巧評分的計算與單站技巧評分計算方法一樣,首先計算統(tǒng)計時段內所有站的本地預報和中央臺的平均絕對誤差,然后利用技巧評分公式即算出其值。部分關鍵代碼如下[2]:
’計算每日本地絕對誤差
if isnumeric(Y_bd)=true and isnumeric(Y_sk)=true then
bdwc=formatnumber((Y_bd*10-Y_sk*10)*0.1,2,-1)
bdwc1=bdwc1+ABS(bdwc)
Y_bds=Y_bds+1
…
’計算統(tǒng)計時段內的本地絕對誤差
if isnumeric(bdwc1)=true and Y_bds<>0 then
bdwc1=formatnumber(Round(bdwc1/Y_bds,2),2,-1)
…
’計算每站統(tǒng)計時段的技巧評分值
if isnumeric(bdwc1)=true and isnumeric(zywc1)=true then
jqpf=formatnumber(Round((zywc1-bdwc1)/zywc1,2),2,-1)
…
’計算綜合技巧評分值
bdwc2=bdwc2+bdwc1
zywc2=zywc2+zywc1
…
bdwc2=bdwc2/Y_bdz
zywc2=zywc2/Y_bdz
jg0=formatnumber(Round((zywc2-bdwc2)/zywc2,2),2,-1)
response.Write(""&VBCRLF)
…
自系統(tǒng)投入業(yè)務應用以來,運行穩(wěn)定,數(shù)據(jù)準確無誤,尤其在預報業(yè)務方面發(fā)揮了重要作用,為2014年安順市精細化城鎮(zhèn)預報質量取得貴州省第3名好成績提供了可靠的技術支撐。系統(tǒng)可以進行精細化城鎮(zhèn)預報中晴雨預報、最低最高氣溫的正確率檢驗,以及與上級預報指導產品比較和評定技巧評分,值班預報員可及時了解自己的預報結果準確率,還可進行統(tǒng)計輸出,既有利于預報員對自己的預報結果進行比較檢驗,在某一段時間如果某項質量偏低時可以起到提醒和警示作用,還可用于與全省其它地區(qū)的預報情況進行比較,便于業(yè)務管理人員及時了解預報情況,對提高精細化預報質量起到有效的促進作用。
組成系統(tǒng)的各部分程序均為自動運行,后臺入庫程序設置為每天固定時間運行,自動讀取本地和中央臺預報相關要素的預報結果、天氣實況等,實時寫入數(shù)據(jù)庫。前臺程序自動生成相應的誤差值,并將誤差值進行對比后顯示在客戶端,其運行結果經多次對比檢驗分析,未發(fā)現(xiàn)任何錯誤。
系統(tǒng)根據(jù)中國氣象局對精細化城鎮(zhèn)預報質量的檢驗要求而設計,充分利用地面氣象自動站資料,基于C/S和B/S兩種工作模式,實現(xiàn)精細化預報與天氣實況的后臺自動入庫,以及基于Web方式下預報檢驗結果的顯示與查詢、統(tǒng)計與輸出等功能。通過使用此方式,可及時掌握值班預報員的預報質量,并與中央氣象臺預報情況進行對比,找出自己的預報質量差距。自投入業(yè)務應用以來,各部分程序均運行正常,并已成為安順市一個實用的精細化城鎮(zhèn)預報檢驗手段。
[1] 符鳳平,吳哲紅,褚麗君,等.基于WEB方式的地面自動站逐時氣象要素共享平臺[J].貴州氣象,2012,36(6):50-53.
[2] 羅銳韌.ASP網頁程序設計[M].北京:清華大學出版社,2005.
Automatic Inspection and Techniques Scoring System for Precise Forecast
FU Fengping,WU Zhehong,GAO Ruyu
(Anshun Meteorological Bureau,Anshun 561000)
The system was developed based on the LAN and the meteorological optical fiber communication network,using SQL Server database and related programming technology,taking fine weather forecast of 8 am for an example,respectively realizing the automatic test and skill score for local weather forecast and the weather forecast from Central Meteorological Station.The system is composed of two parts of the background program and the foreground program,the background program was based on C/S working mode,respectively realizing storage and adjustment automatically for local weather forecast,the weather forecast from Central Meteorological Station,local weather condition.The foreground program was based on B/S working mode,respectively realizing the function of display and query,automatic statistics and output for local weather forecast,the weather forecast from Central Meteorological Station,local weather condition,test result,skill score and other information.Since the system has been put into the weather forecast operation,the weather forecast operation and the demand of management had been met large,also had positive significance for improving the precision of fine weather forecast.
Fine Weather Forecast;Automatic Test;Skill Score
2014-08-08
符鳳平(1969—),女,高工,主要從事網絡維護及開發(fā)工作。
1003-6598(2015)05-0014-05
P456
A