李若楠 吕家欣 全美兰 李俊乐 李炳坤 马晓颖 刘畅
摘要 天气预报质量不仅是气象部门的日常业务考核内容,也是各个气象台站、每个预报员业务水平高低的具体体现。城镇天气预报质量检验平台采用C#语言通过气象数据统一服务接口(MUSIC),将CIMISSS中的气象数据提取到本地SQL Server数据库中,利用Matlab GUI编程并可视化数据库中的数据,可随时有效地对当地整体天气预报质量和个人预报员的天气预报质量进行评定。系统自2020年1月投入运行以来,天气预报质量评定效率显著提高,该系统运行稳定、界面友好、操作简单、评定准确、性能可靠,可在各市气象局进行推广使用。
关键词 城镇天气预报质量检验;CIMISS;MUSIC;C#;SQL Server;MATLAB GUI
中图分类号:P409 文献标志码:B 文章编号:2095–3305(2021)11–0054–02
信息化是当今世界经济社会发展的大趋势,为了推进气象信息化工作,满足各种气象业务应用需求,统一气象数据环境,国家发改委建设重点项目“全国综合气象信息共享平台(CIMISS)”,實现了国家级、省级数据同步和实时历史数据一体化管理,并提供了气象数据统一服务接口(MUSIC),为国、省、地、县各级气象局应用系统提供唯一权威的数据接入服务,这为各级气象台站共享气象信息和业务应用开发与科研工作提供了便利条件,现已成为气象数据流动的“主动脉”[1-2]。各级气象部门基于CIMISS也研发出了多种业务应用系统[3-7]。天气预报的准确度不仅是气象部门日常业务重要的考核内容,也是每个气象台站和每个预报员业务能力高低水平的具体体现。为减少人工统计的工作量和准确度,本文借助C#、SQLserver2008和Matlab GUI设计开发出城镇天气预报质量检验平台,此平台能快速查询并统计出全体或个人历史天气预报质量情况。
1 系统设计及技术路线
1.1 基本思路
利用C#编程每日定时(08:00、20:00)将日最高气温、日最低气温、日降水量数据提取出,并保存到本地SQL数据库中,再通过Matlab GUI设计开发城镇天气预报质量检验平台,通过建立ODBC源的方式随时读取SQL Server数据库中的数据并进行统计分析和可视化展示。
1.2 功能设计
城镇天气预报质量检验平台主要分为4个功能:个人/地区分时段质量检验、分时段逐月—年检验、综合逐月个人检验、综合逐月—年检验。可通过2种方式将查询结果保存:保存当前结果、截图当前界面。天气预报准确率是指最高温度准确率、最低温度准确率、晴雨准确率,统计时段为08:00~08:00或20:00~20:00。通过组合选择平台自动提取和计算数据,并将统计结果展示在界面上。
1.2.1 个人/地区分时段质量检验 输入统计年份,选择统计月份和统计时段,根据选择好的统计选项(预报员、整体),统计结果包含月平均准确率、每个评分台站月晴雨错落报数及逐日质量评定详情(实况值、预报值、评定结果)。
1.2.2 分时段逐月—年检验 输入统计年份,选择统计月份和统计时段,点击分时段逐月—年检验,统计对象为所有评分台站。统计结果包含4个部分:统计时段年平均准确率、逐月预报准确率、累计月预报准确率、逐月和累计月预报准确率和累计月值班数。
1.2.3 综合逐月个人检验 输入统计年份,选择统计月份,点击综合逐月个人检验,统计对象为所有评分台站,统计时段为2个时段的合并,统计结果包含4个部分:集体月平均准确率、年平均准确率、选择月份每个预报员和集体的天气预报月准确率以及月值班班次、1月至选择月份每个预报员和集体的天气预报累计月平均准确率以及对应总值班班次。
1.2.4 综合逐月个人检验 输入统计年份点击综合逐月—年检验,统计对象为所有评分台站,统计月为输入年的全月,统计时段为2个统计时段的合并,统计结果包含集体天气预报准确率、每个预报员和集体全年逐月天气预报准确率和年天气预报准确率、每个预报员和集体全年每月值班班次和次数。
2 统计原理
2.1 晴雨统计原理
晴雨预报准确率规定:雨天标记为1,晴天标记为0,即降水量不为0的日为降水日,当预报标记=实况标记就判定为晴雨预报正确。
2.2 温度统计原理
根据(辽气发[2006]171号)关于印发《辽宁省气象部门乡镇短期天气预报质量检验办法(试行)》的通知中对温度预报准确率的规定,若预报温度与实况温度绝对差值不大于2判定温度预报是正确的,评定值为1,否则为0。
2.3 准确率统计原理
P=(M/N)×100% (1)
P:准确率;
N:统计样本总日数(即班次);
M:统计样本中评定值为1的日数。
3 关键技术
3.1 数据库设计
按照结构化设计方法,数据库设计的步骤包含:需求分析、概念结构设计、逻辑结构设计、物理设计、实施与测试、运行维护等几个阶段[8]。
本文利用Microsoft SQL Server 2008创建本地数据库,库名Ground并设置用户名和登录密码;新建数据表dbo.daysvalue和dbo.CityTRstatistics分别用于存储08:00~08:00、20:00~20:00日各站点实况值、预报值与评定结果和各预报员城镇天气预报质量数据。
3.2 基于CIMISS环境的气象数据访问及数据入库设计
MUSIC是用户从Cimiss数据环境中获取数据或产品的应用编程接口,参考MUSIC网站说明调用接口函数,即可完成从cimiss环境中获取数据或产品功能。本文利用C#编写调用代码从CIMISS中读取需要的气象数据并入库到本地SQL数据库中。
3.3 气象数据的可视化
MATLAB软件具有强大的数据分析、科学计算和图像处理功能,其图形用户界面(GUI模块)是包括窗口、图标、菜单、工具条等的用户界面,具有设计界面友好、人机交互方便的特点,使用GUIDE即可完成GUI图像界面布局和GUI编程这2项工作[9]。
本文选取菜单编辑器、静态文本、可编辑文本、弹起式菜单、触控按钮、表格、面板完成气象数据可视化的界面设计。
4 应用实例
以2020年6月08:00~08:00为例,统计选项里“整体”为例展示个人/地区分时段质量检验功能(图略)。平台显示出6月每日每个值班员当日各气象要素预报的准确情况以整体08:00~08:00月预报准确率为:最高温度准确率为93.33%、最低温度准确率为88%、晴雨准确率为89.33%,晴雨错落报情况:章党错(落)报1次,清原和新宾各错(落)报2次。
5 结束语
利用C#编程可以将Cimiss中需要的日气象数据定时提取并保存到本地SQL数据库中,通过Matlab GUI设计开发城镇天气预报质量检验平台可以随时查询到某日具体预报质量情况,根据日常业务功能需求,能自动统计出抚顺地区城镇天气预报质量日质量、月质量、年质量情况和各预报员天气预报质量日质量、月质量、年质量情况。相比手动编辑统计的方式,数据库存储数据既保证了数据的安全性、准确性和长久性,友好的人机交互界面和多功能数据可视化设计也极大地方便了预报员总结分析预报质量,为目标考核和优秀预报员评比提供了科学的依据。
参考文献
[1] 季永华,孙超,刘一鸣,等.CIMISS中气象观测资料处理入库效率优化法[J].气象科技,2017,45(1):29-34.
[2] 贾显锋,刘洲荣.一种基于Windows API编程技术的CIMISS气象资料调用方法[J].气象研究与应用,2018,39(2):101-104.
[3] 文立恒,冯冼,贾霓云.CIMISS县级综合气象业务平台应用研究[J].中国设备工程,2017(16):212-213.
[4] 程飞军,黄琳.VB编程获取CIMISS数据及中文乱码处理[J].江西科学,2019, 37(3):434-439.
[5] 李永刚,付春红,刘忠群,张鹤.基于CIMISS的降水短信报警系统设计与实现[J].吉林农业,2019(22):99-100.
[6] 陆艳,杨晓明,陈利芳,等.基于CIMISS的地市州级气象数据传输监控平台设计与实现[J].农业灾害研究, 2019,9(5): 54-56.
[7] 熊劦,邓卫华,胡佳军,等.基于CIMISS的区域灾害性天气实时监测与报警系统的设计与实现[J].气象科技, 2017,45 (3):453-459.
[8] 段远志.数据库设计方法[J].南昌教育学院学报,2005,20(4):84-89.
[9] 罗华飞.MATLAB GUI设计学习手记[M].第2版.北京:北京航空航天大学出版社,2011.
责任编辑:黄艳飞
Development of Urban Weather Forecast Quality Inspection Platform Based on CIMISS and SQL Server With the Help of Matlab GUI and C #
LI Ruo-nan et al(Fushun Meteorological Bureau, Fushun, Liaoning 113000)
Abstract The quality of weather forecast is not only the daily operational assessment content of meteorological departments, but also the concrete embodiment of the operational level of each meteorological station and forecaster. The quality inspection platform of urban weather forecast uses C# language to extract meteorological data from cimisss to local SQL Server database through the unified service interface of meteorological data (music), by using Matlab GUI programming and visualizing the data in the database, the local overall weather forecast quality and individual forecasters weather forecast quality can be effectively evaluated at any time. Since the system was put into operation in January 2020, the weather forecast quality evaluation efficiency of Fushun meteorological station has been significantly improved. The platform has the advantages of stable operation, friendly interface, simple operation, accurate evaluation and reliable performance, which can be widely used in various municipal bureaus.
Key words Quality test of urban weather forecast; CIMISS; MUSIC; C#; SQL Server; MATLAB GUI
作者簡介 李若楠(1989—),女,吉林辽源人,工程师,主要从事天气预报预警和气象服务工作。#通信作者:吕家欣(1995—),女,辽宁绥中人,助理工程师,E-mail:1091627551@qq.com。
收稿日期 2021-07-23