彭芳 齐大鹏 吉廷艳
摘要:系统结合前期研究成果及本地数据环境进行开发设计,利用Python语言及相关库,实现了气象站点、交通站点观测资料的合并及插值到高速路段,自动生成图片和文字产品,也实现数值预报格点超到高速公路的插值。采用Python+Django设计WEB系统对产品进行展示,方便用户通过网页对产品进行浏览。
关键字:Python;高速公路;大雾;预警
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2019)28-0085-02
贵州属于低纬高原山区,地形地貌复杂,天气气候多变,大雾天气频发,对高速公路交通运输存在严重隐患,因大雾造成高速公路重大交通事故屡有发生,对国民经济和人民生命财产造成重大损失。贵州的大雾天气和气候特征,已经有较多的学者进行了研究[1-6]。在交通气象服务方面,王红丽[7]指出人们最关注的气象印章有道路结冰、雾和霾、强降雨、积雪其他省份地区气象服务工作已经开展或陆续开展,田华[8]通过问卷形式对气象、交通、公安等多部门公路交通决策气象服务关注的气象要素、产品类型和时段、服务改进方向等需求进行了调研指出监测类产品对低能见度、道路积雪要素最为关注,预报类产品对雨雪和大雾要素最为关注;王慕华[9]设计面向公众出行的公路交通气象服务系统;吴阳军[10]雨雪雾等不利气象条件导致了公路设施损毁、交通延误、交通事故、环境污染等问题,增加了出行成本。为保障贵州高速公路交通安全运输,有必要开发高速公路大雾预报预警系统,为高速公路安全管理提供技术支撑。
1 系统设计
系统建设结合本地数据环境进行开展,主要分数据分析模块、WEB服务两部分,其中WEB服务包括WEB设计及后台部署相关内容。
系统由python语言开发,需要在python环境下运行,python版本为3.6以上。系统依赖库信息如表1所示。
2 数据分析
大雾观测数据通过能见度观测仪进行观测,目前气象部门收集到的能见度数据有气象观测站、交通站和交通部门共享数据,都为站点格式资料,数据通常用来作为大雾监测预警。大雾预报依赖前期研究成果,通过判定天气形势、地面高空气象要素值,结合数值预报进行计算,资料为格点格式资料,数据用来做大雾预报用。系统主要分为站点资料处理和格点资料处理。数据都统一入库到内部数据cimiss数据库,通过接口形式获取。
高速公路数据为shp格式数据,需要将能见度数据插值到高速路段上,以便能够在图形系统上直观反映。
2.1 大雾监测预警
按照时间参数获取三类实况观测数据,将三类数据合并为统一格式产品,按照大雾预警标准将能见度分为小于100、100-200、200-500、大于500四个等级,结合高速路段信息进行插值计算,不同等级的能见度通过metpy.interpolate.interpolate_to_points插值到高速路段上,最后根据插值后的路段信息进行填色处理,同时将有雾的路段信息输出保存为文本文件,按照指定文件名格式进行存储供前端显示。如图1。
2.2 大雾预报
大雾预报采用格点预报插值到高速路段的方式。目前气象上的数值预报数据都是格点数据,本文采用高分辨率数据空间分辨率达12.5km,时间分辨率达3小时。根据前期研究结果,通过提取最新时次数值预报数据地面要素,地面相对湿度(或温度露点差)、10分钟平均风速、气温、3小时变温、24小时变温。前期研究结果将贵州大雾分为辐射雾和锋面雾,对应不同的指标进行分类并分析计算,通过metpy.interpolate.interpolate_to_points插值到高速路段上,最终形成锋面雾、辐射雾以及无雾的图片产品,同时生成对应的大雾信息文件,按照指定文件名格式进行存储。
3 WEB设计
WEB端采用Python+Django框架设计,实现后台管理、预报员登录、预报员大雾类型选取、访问信息记录、图片浏览等功能。
3.1 模型Models
Django模型Models主要包括3个模型,Users、FlogType、VisitInfo,分别记录用户信息、大雾类型、访问信息,实现用户管理,大雾类型判断,网站流量信息记录等功能。用户信息为预报员用户,预报员需要登录后提交大雾类型并记录在数据库,以便其他用户能够直接流量对应大雾预报数据。
3.2 路径URLS
URL路径配置,配置index、picurl、login、logout、savetype、image六个路径,分别对应首页、图片检索、登录、登出、保存大雾类型、图片路径,其中index、login、logout不带参数即可访问。picurl为图片检索,必须带指定参数才能返回正确信息;savetype必须登录后带正确参数才能入库保存大雾类型,图片路径对应数据存储的绝对路径地址。
3.3 视图函数Views,
首页,调用base.html生成页面,页面如图2。
图片检索,采用get方式传递参数,根据接收参数返回图片url以及对应的大雾信息,统一生成json格式供前端解析。访问前首先记录访问信息进入模型数据库。
登录,采用post方式登录,用户提供用户名密码,验证后才能登录并保存session,登录后具有大雾类型提交权限。退出登录,同时清除session。
保存大雾类型,根据session状态判断是否登录,没有登录的返回未登录信息。大雾类型提交根据时间选择框进行提交,提交的大雾类型为对应时间的下一次大雾预报类型。参数通过get方式获取,根据model的flogtype类型提取访问信息并存储,返回类型为json格式。
4 結束语
系统利用Python语言结合目前实际需要以及特定的数据环境进行设计开发,实现了多观测数据统一,将站点、格点数据插值到高速路段并采用Python+cartopy绘图符合使用习惯,图形直观明了。同时系统采用预报员判断大雾类型提交数据库,简化了系统设计的同时实现了大雾的预报。大雾预报预警系统建设,结合前期对大雾的研究成果,将成果展示给行业用户,实现大雾监测预报一体化,不仅给决策部门提供了参考依据,还提升了工作效率。
参考文献:
[1] 罗喜平,杨静,周成霞.贵州省雾的气候特征研究[J].北京大学学报:自然科学版,2008(5).
[2] 胡跃文,秦杰.2016—2017年贵州大雾时空分布及气象要素演变分析[J].气象 ,2019(5).
[3] 陈娟,罗宇翔.近50年贵州雾的时空分布及变化[J].高原山地气象研究,2013(2).
[4] 罗喜平,周明飞.贵州区域性辐射大雾特征与形成条件[J].气象科技,2012(5).
[5] 谢清霞,唐延婧,庞庆兵,等.贵州辐射雾的时空变化特征及其气象要素分析[J].气象与环境科学,2016(2).
[6] 唐延婧,裴兴云.贵州交通站资料应用于山区高速公路低能见度研究[J].热带气象学报,2015(2).
[7] 王红丽,黄建菲,尚媛媛.贵州省交通气象服务分析评估[J].气象科技进展,2015(4).
[8] 田华, 吴昊,杨静,等.公路交通决策气象服务需求分析[J].气象与环境科学,2018(4).
[9] 王慕华,唐卫.面向公众出行的公路交通气象服务系统[J].气象科技,2015(5).
[10] 吴阳军.公路交通气象服务一体化[J].中国公路,2018(7).
【通联编辑:李雅琪】