吉林省数值预报数据可视化平台

2018-07-09 09:00吴天亭江晓玲全秋浩
无线互联科技 2018年13期
关键词:风场吉林省气象

吴天亭,江晓玲,全秋浩

(1.吉林省气象信息网络中心,吉林 长春 130062;2.吉林省防雷减灾中心,吉林 长春 130062)

近年来气象模式预报发展越来越快,也越来越准确。但是吉林省气象局的天气预报(Weather Research and Forecasting,WRF)模式的数值预报一直只能用WRF模式平台进行分析参考[1]。本文开发的吉林省数值预报可视化平台以WRF模式数值预报为数据源,将基本的气象要素进行可视化,例如温度、湿度、降水等。使用该平台,气象预报人员可以告别Micaps的等值线分析方式,能更直观地对要素做出可视化分析,提供更好的预报服务。

1 国内外气象可视化现状

气象预报中一直使用的是枯燥的数据,针对气象要素的可视化研究一般局限于实时数据和历史数据。对于在预报当中非常有用的数值预报数据的可视化一直研究较少,特别是对于WRF模式可视化研究,目前国内还不多见。

国外在气象可视化已经走在了前列,特别是英国开发的气象温度历史数据网页如图1所示。

目前,温州市气象局开发的温州台风网以温州市附近的台风数据为基础,辅助以矢量线条作为风场的可视化形式,再用颜色变化来表现温州市市内的区域自动站和模式预报数据的实时要素可视化情况。还有美国的可视化系统Wind map,该系统以d3.js作为软件开发基础,也是做了风场数据的可视化[2]。国外还是以风场可视化为重点,本系统的可视化不只有风场,还加入了温度、湿度、降水的可视化部分,在气象分析中起到更大作用。

无论是美国气象同行的风场可视化系统,还是日本同行的风场可视化系统,虽然已经使用广泛,成熟稳定,但是都存在不同程度的缺点和有待完善的领域。温州气象局研发的风场系统以台风为主,对于陆地的风场可视化并不直观。东京气象局研发的Tokoyo Wind Map虽然抓住了风场的流场特性,但是以黑白明暗的变化来表示风的强度,也并不便于气象预报分析[3]。本系统研发的吉林省数值预报数据可视化平台,既把握了风场的流场特性,又采用HTML5的新特性利用彩色颜色色度变化来表示风的强度,都对已有的国内外的风场可视化系统进行了极大的完善。

图1 英国气温史(UK Temperature History)的网站数据

2 WRF预报平台总体设计

本设计数据源以吉林省气象局研究所高性能计算机的WRF格点预报为主,经纬度区域限为东北三省,首先利用Java将WRF格式的预报数据写入数据库,然后再用程序将数据库中的数据写入json文件。Vue.js将数据和前端view绑定到一起能够更好地提供数据服务[4]。

要素的可视化主要是以风场动画图与其他要素的色斑图结合为主,并且可以通过时间线多看72小时后的数值预报情况。世界地图通过将时间地图的shp数据转化为Topojson数据,然后通过网页将世界地图放在地球上,这样可视化过程更为直观[5]。

2.1 Node.js和Javascript相关技术

Node.js实际上是伴随着HTML5的出现而产生的。HTML5的产生使前端网页的开发大行其道,Javascript越来越重要,node.js就是C++开发的专门为Javascript服务的后端程序,在node.js的基础上有各个公司为JS开发提供便利的插件,在node.js中可以很方便地进行配置安装。Mysql.js就是其中一款插件。Mysql.js作为连接Javascript的前端和node.js的重要插件,将前端发送的访问数据库的命令通过node.js转换为C++访问数据库的程序。Mysql.js的使用和Java中对MySql数据库的API调用相似,也是先建立连接,然后执行查询,再关闭连接的流程操作。而最主要的就是Vue.js的框架和MVVM(Model-View-View Model)模式技术。

Node.js的特别之处是,框架本身以V8 Javascript为基础,是服务端的Javascript,V8 Javascript与其他版本Javascript不同点是V8自身有一套独特的解释器,可以将V8 Javascript不局限于在浏览器中使用,可以作为应用程序使用,这样的话,V8 Javascript将Javascript上升到了一种应用层面的编程语言系统[6]。

2.2 Vue.js和MVVM

Vue.js是用Javascript开发的一套视图层MVVM框架。Vue.js与Angular.js相比,最大的特点就是入门容易,能够更好地为前端开发服务。而且Vue.js还可以自定组件,支持自定义开发自己的Vue.js,自定义模块更加方便了程序员的开发过程。

Vue.js是数据驱动型框架,DOM和数据绑定在一起,只要数据发生改变,DOM就会同步变化,无需手动操作DOM。它通过一些特殊的HTML语法,将DOM和数据绑定起来。一旦创建了绑定,DOM将和数据保持同步,每当数据变更,DOM也会相应地更新。在与相关工具和支持库一起使用时,Vue.js也能完美地驱动复杂的单页应用。

MVVM模式将框架分为模型和视图两部分。这样做的好处就是:(1)可以模块化,在ViewModel里,视图的逻辑可以在模型当中重用。(2)不同的Model可以对应不同的View,也就是说View独立于Model,当对Model进行修改时,View可以不做修改,而当更改View时Model也可以不变。(3)在数据开发和视图开发当中,开发人员可以分开开发,因为MVVM模式低耦合性和模块化的特点使在Vue.js的开发中有这样的优点。在Web开发中框架的选择至关重要,因为框架决定着开发的难度和软件维护的成本[7]。

2.3 服务端搭建

本系统的后台使用的是目前前端开发使用比较广泛的node.js,因为node.js本身就是用Javascript开发的,所以在HTML5和Javascript支撑的系统当中,既能保持很好的稳定性,又能保持程序运行有较好的速度。而且node.js本身功能也十分强大,便于程序在开发过程中的调试和程序开发结束后的测试。

2.4 WRF数据处理

数据源,吉林省气象研究所利用吉林省气象局的高性能计算机,每天运行两次进行高性能计算,计算出吉林省全省的WRF模式数值预报结果,该结果有两种形式存储于高性价计算机,一种是气象通用格式Netcdf格式的预报结果数据文件,另外一种是Grads格式的预报结果数据文件。本系统利用GRADS格式的数据文件,利用Java程序解析成经纬度步长都是0.5度的格点数据,然后将数据存储到Mysql数据库。数据库中的格点数据供调试和查询使用[8]。

再利用Java程序将Mysql数据库数据处理成固定格式的Json数据,Json格式固定参数设置如表1所示。

表1 Json格式固定参数设置

Json格式文件上传到node.js的服务器数据路径,由系统数据平台读取。

2.5 实时数据处理

实时数据得技术难点是利用NCL(NCAR Command Language)的插值功能对实时数据进行插值。

NCL是气象使用广泛的一款软件,由美国的NCAR研发,底层用FORTRAN语言写的源码,便于在图形可视化和科学研究分析当中使用,和其他程序语言不同之处是没有了其他程序语言的预编译过程。作为开源软件,便于开发人员进行使用。

NCL支持对GRIB和NETCDF等格式文件的直接解析和绘制,并能输出位图和矢量图,也支持C语言程序或者FORTRAN语言程序的调用。

本系统主要使用的是NCL开源的API接口,对原数据进行插值然后输出CSV格式的文件。NCL自带的绘图软件在二维绘图和三维绘图上都是强项,本系统在开发过程中,使用了NCL的绘图功能和系统的绘图进行比较,便于程序的调试。

实时数据处理,在整个WRF模式数据预报软件平台中,除了预报数据,还有实时格点数据的可视化,实时格点数据的来源是吉林省气象信息网络中心的数据库。以数据库中的区域站数据为数据源,NCL为插值工具。

3 结语

作为轻量级的前端网页可视化程序,在MVVC的框架选择中选择了比较容易上手的Vue.js,数据交互利用MySql数据库和json文件进行前后台数据交互,然后将气象要素降水温度湿度进行可视化,特别是在气象预报当中比较重要的要素风场,可以用矢量动画进行展示,大大方便了预报员的预报工作。

[1]彭娜.基于Node.JS博客系统的设计与实现[D].大连:大连理工大学,2013.

[2]巴特尔.基于NodeJS的理财应用的设计与实现[D].长春:吉林大学,2014.

[3]李永生,刘修伟,杨玉红.气象大数据跨平台分析与应用技术研究[J].电脑知识与技术,2013(31):6943-6947.

[4]沈文海.气象业务信息系统未来基础架构探讨—“云计算”和“大数据”在气象信息化中的作用[J].气象科技进展,2015(3):64-66.

[5]SKAMAROCK W C,KLEMP J B,DUDHIA J,et al.A description of the advanced research WRF version 3[R].NCAR Technical Note,NCAR/TN-475+STR,2008.

[6]章国材.美国WRF模式的进展和应用前景[J].气象,2004(12):27-31.

[7]王晓君,马浩.新一代中尺度预报模式(WRF)国内应用进展[J].地球科学进展,2011(11):1191-1199.

[8]刘星沙,罗昔军.基于MVC模式的Struts和Spring整合框架的研究与应用[J].湘潭大学自然科学学报,2007(1):92-95.

猜你喜欢
风场吉林省气象
气象树
吉林省教育厅新年贺词
基于FLUENT的下击暴流三维风场建模
《内蒙古气象》征稿简则
吉林省梅河口老年大学之歌
吉林省完成1.4万公里农村公路“畅返不畅”整治
大国气象
美丽的气象奇观
侧向风场中无人机的飞行研究
风场条件下LPG 瞬时泄漏扩散的数值模拟