2. 成都市气象局, 成都 610072
2. Chengdu Meteorological Bureau, Chengdu 610072
成都市位于四川盆地西部,东北部为德阳市,西南与雅安市相连,南接眉山,东南毗邻资阳市,西北紧靠阿坝自治州,东西横距192km,南北纵距166km,面积12 390km2,属于内陆城市。成都市东西两翼高差近5000m,由于地表海拔高度差异显著,直接造成水、热等气候要素的空间分布不均,西部山区温度低于东部平原地区,成都市全年静风频率高,相对湿度较高,容易出现逆温现象,不利的气象条件造成成都市易出现污染积累,并发生雾霾天气,从而使成都市对空气质量数值预报的需求迫切。
本文介绍了一个基于Models-3 的业务化空气质量数值预报系统,该系统以CMAQ 为核心模式,使用Yabasic 语言开发相应的业务化支持软件,实现空气质量的业务化数值预报,并将系统部署于小型工作站上,在较低的硬件成本上实现空气质量的业务化预报。本文最后对该系统2014 年一年的空气质量数值预报结果进行分析,评价该系统的预报效果。
1 系统构成Models-3 空气质量模拟系统为美国EPA 于1998 年提出的,以第三代空气质量模式CMAQ 为核心,包括MM5/WRF 气象模式和SMOKE 排放清单处理模式,其应用范围涵盖与空气质量的数值模拟相关的评价、分析和决策支持等方面,可用于NO2、SO2、颗粒物和臭氧等问题的模拟[1, 2, 3, 4, 5, 6, 7, 8, 9],在国内外也有成功将CMAQ 模式用于空气质量数值预报的案例[10,11]。由于空气质量数值预报在我国尚处起步阶段,各地预报员能力水平差异较大,因此在进行自修正空气质量预报系统设计时有必要开发一个基于图形用户界面的可视化工具,方便预报员对业务预报系统进行简单的操作和必要的控制。该预报系统使用GAMBAS 语言[12]开发系统监控模块,GAMBAS 最初由Beno?t Minisini 开发,为Linux 下的一款高效快速图形化应用程序开发工具,具有较好的移植性。业务预报系统主要完成Models-3 的整个运行流程,包括调用WRF 模式实现气象场数值预报、调用SMOKE 模式动态生成排放清单,并将气象数据和排放数据输入CMAQ 模式,进行大气污染物浓度数值预报。业务预报系统需要满足高稳定性、高效率和低资源占用等要求。Yabasic语言为德国计算机工程师Marc-Oliver Ihm开发,具有体积小、跨平台的特点,可以非常便捷地对多种模式进行交互,且稳定性高,故用于开发业务预报系统。该预报系统还包括:监测数据收集模块,用于获取准实时空气质量监测数据;预报产品处理系统,在该系统中生成每日所需的预报产品,结合实测数据进行修正预报,并对预报数据进行管理和回顾评价;预报产品发布系统,用于提供Web 访问支持。系统目前部署于一台DELL Optiplex 9010 工作站上,系统配置一枚Intel I7-3770 四核CPU,配置8GB 内存和4TB 硬盘用于文件备份,1TB 硬盘用于系统运行。
1.1 系统监控模块系统监控模块为一个驻留在系统内存中的程序,用于检测监测数据收集模块和业务预报模块是否正常运行,同时可以提供基本的操作和预报结果的查看。通过该系统,可以对空气质量预报系统进行全面监控和简单操作,并可进行自修正空气质量预报系统的各项参数设置,包括WRF、SMOKE 和CMAQ 的运行参数、系统预报长度和系统插件启用情况等。该模块的另一重要功能为定时检测NCEP 服务器上GFS 全球预报系统某一预报时次的输出数据是否可以下载,并在可下载时自动开始气象数据的下载。该系统目前采用GMT00 时的0.25°分辨率预报场作为初始场,进行含当日在内的96 小时的数值预报,预报进程开始于每日中午12:00,每隔20 分钟检测一次GFS 气象数据是否可以下载,通常情况下,使用8M 宽带可以在两小时内完成数据下载,随后系统监控模块将启动空气质量的数值预报流程。为了尽可能地保证系统运行的稳定性,进入2015 年后,课题组租用阿里云服务器实现远端前日GMT12时1°分辨率的预报数据自动备份。系统监控模块运行于图形界面,操作人员可查看系统运行状态,并对自修正空气质量预报系统进行操作,其运行界面如图1 所示。
业务预报系统是自修正空气质量预报系统的核心组件,该系统耦合WRF 模式、SMOKE 模式和CMAQ 模式,处理模式参数修改、运行和文件处理,依次调用三个模式完成天气数值预报、排放清单动态处理和空气质量数值预报,并处理与模型嵌套运行相关的初始条件、边界条件生成,运行流程如图2 所示。
业务预报系统首先按预报长度、模式理化参数配置等信息进行修改,检验气象数据下载是否包括第一个时次的初始场,以及预报长度所需的最后一个时次的预报场,并启动WRF 模式进行气象数值预报。现阶段自修正空气质量预报系统设置进行双层嵌套,外层为88×88×6km 的网格,包括四川盆地的大部分地区,内层为121×96×2km 的高分辨率网格,包括成都市行政区划,WRF 模式的气象参数设置参考现有研究成果[16],WRF 模式运行完成后,需要对WRF 模式的输出数据进行归档处理,随后调用CMAQ 模式的MCIP 模块将WRF 模式的输出数据转换为IOAPI 格式。气象模式转换完成后,首先调用CMAQ 模式的ICON 模块,从前一天的预报结果中计算本次数值预报的各污染物初始浓度,进行热启动,使每日的初始浓度具有合理的空间分布,随后业务预报系统调用SMOKE 模式处理排放清单,进行时间分配、空间分配和垂直分配,生成CMAQ 模式所需要的netCDF 排放清单。
气象数据和排放清单数据处理完成后,业务预报模块将分别对外层网格Domain 1 和内层网格Domain 2 进行空气质量数值预报。处理外层网格预报流程时,使用基于统计数据的网格边界浓度,随后使用CCTM 模块完成数值预报过程,并在线计算光化学反应速率和干沉降速率。Domain1 计算完成后,业务预报系统通过BCON 模块从Domain1 的预报结果中获取Domain 2 的边界输入输出浓度,进而完成成都市辖区空气质量数值预报。由于CCTM 模块输出的污染物浓度主要为体积浓度,且以模型组分为主,故需要通过模型物种计算器对污染物物种进行合并和单位转换,模型物种计算器基于CMAQ 的COMBINE 组件,除COMBINE 组件中所包含的大气污染物浓度外,还同时计算相对湿度、降水、干湿沉降、地面风速、风向、温度等基本要素。
1.3 监测数据收集模块自修正空气质量预报系统包含一个准实时监测数据收集模块,使用Python 语言和SGMLParser[14, 15] 开发,该模块定时解析成都市环境监测中心站实时空气质量监测数据发布网页,提取相关数据后存储至SQLite 数据库中,并将该数据用于空气质量数值预报效果的比对和修正。
1.4 预报数据处理系统预报数据处理系统主要使用R 语言[17] 开发,通过RNetCDF 库[18] 处理模型物种计算器输出的netCDF 文件,计算AQI 值,并制作必要的产品。预报数据处理系统根据中国环境监测总站出具的AQI 指数计算方法[19] 计算预报所得的AQI 指数,并绘制预报所需的气象条件变化图、大气污染物浓度变化图等信息。
预报数据处理模块生成的产品包括成都市中心城区未来三天空气质量直接预报结果、四川盆地PM2.5 逐时变化趋势图、各预报点位污染物浓度逐时变化序列图、各预报点位气象要素逐时变化序列图、地面及四个气压层风速、温度、相对湿度等要素的逐时变化图,以及垂直剖面上的温度、风速和相对湿度的逐时变化图。此外,预报数据处理模块还调用ARWPOST 和Grads 绘制地面风场、地面温度、剖面温度、剖面风速、剖面相对湿度以及925hPa、850hPa、700hPa、500hPa 四个气压层上的风场和湿度场,调用Verdi 程序绘制地面污染物浓度逐时空间分布,并生成GIF 格式动画,部分产品如图3 所示。
预报数据处理系统的另一重要功能则是实现空气质量跟踪自动修正预报,修正预报基于现阶段监测数据。由于目前排放源清单统计数据质量和制作水平的制约,使用数值预报提供未来空气质量的变化趋势信息,并在此基础上通过监测数据进行浓度修正,可以有效减少重污染天气的漏报,自修正空气质量预报系统在每日上午9:00 至10:00 间出具含当日在内的四日空气质量数值预报,因此编写程序获取出具预报时刻前8 小时的空气质量实测数据与直接预报中前8 小时的预报浓度进行计算,计算二者相关系数R,并分情况进行空气质量数值预报修正,如下式:
预报数据处理系统每天评价前日空气质量直接预报的效果,该功能主要使用R 语言实现,部分统计和绘图功能来自openair 库[20],使用RMarkdown 库[21]生成回顾评价报告。评价报告包括预报浓度数据对比、主要气象参数回顾、污染物浓度变化时间序列、统计指标分析和预报对比,其中预报浓度数据对比列出各污染物逐时浓度变化数据,主要气象参数回顾则主要给出模式预报的风玫瑰图、边界层高度两个指标,污染物浓度变化时间序列则以图表形式显示预报数据与实测数据的变化情况,统计指标分析则从FAC2 系数、平均偏差、平均误差、标准化平均偏差、标准化平均误差、均方根误差和相关系数R 等方面对预报效果进行综合评价,最后将预报的AQI 报表与实测的AQI 报表进行对比。建立空气质量预报回顾评价体系有助于分析空气质量预报中存在的问题,以便改进预报效果,因此回顾评价以未进行修正的直接预报结果为评价对象。
1.5 空气质量预报发布模块空气质量预报发布模块由三部分组成,分别为基于Linux Msmtp 和Mutt 构架的电子邮件发布系统[22]、基于Apache 建立的Web 服务器[23] 和使用百度地图API 的开发的WEBGIS 发布系统。
Linux 操作系统下,Msmtp 和Mutt 的组合经常被用于设备的自动邮件预警,使用这两个程序实现邮件的发送系统不需要建立本地邮件服务器,仅需使用支持smtp 认证的公共邮箱即可,省去了本地邮件服务器的架构和维护工作。Apache 服务器用于支持通过浏览器对预报结果进行访问,配置本地路径为Apache 服务器的访问路径,并开放80 端口用于架设Web 服务器,并通过NAT地址映射实现互联网访问。百度地图API[24] 则提供了一套免费的、详细的在线地图资源,使用百度地图API 开发的GIS 发布系统无须授权费用,可直观展现空气质量数值预报的结果,百度地图可以显示行政区划图和矢量标注,标注物的颜色符合环境空气质量指数(AQI)技术规定。如图4 所示。
自修正空气质量预报系统于2013 年12 月15 日开始投入试运行,2014 年1 月1 日开始提供业务预报,并业务化运行至今,取2014 年预报数据,共出具有效预报302 天,参照我国AQI 评价标准,对24 小时直接预报的NO2 日均值、SO2 日均值、PM10 日均值、PM2.5 日均值、O3 小时最大、O38 小时滑动最大和CO 日均值进行统计评价,分别评价其FAC2 系数、平均偏差MB、平均误差MGE、归一化平均偏差NMB、归一化平均误差NMGE、均方根误差RMSE 以及相关系数R,结果如表1 所示。
302 个有效预报数据中,同时存在监测数据的预报数量为297 个,因此参与统计的各污染物预报有效样本个数297 个。FAC2 系数为预报浓度在实测浓度的0.5~2 倍的数量比例,可见除SO2 的FAC2 系数偏低外,其余各预报指标的FAC2 系数均在80% 左右,部分预报项目的FAC2 系数达到90% 以上,说明预报浓度和实测浓度的偏差范围是可以接受的。平均偏差MB 显示,除SO2 整体偏高为9.68 外,其余指标均有偏低现象,其中以O3 小时最大浓度的偏低最为明显,其次为PM10 和PM2.5;归一化平均偏差显示,SO2 偏高达50% 以上,而PM2.5 偏低达到21.08%,O3 小时最大浓度的偏低幅度也达到了18.69%。对比平均误差MGE 和平均偏差MB,可见SO2 指标的MGE与|MB| 差异不大,说明SO2 的偏差属于系统性偏高,而PM10、PM2.5、O3 小时最大、O38 小时滑动最大等指标均有明显差异,可见这些指标的预报同时存在偏高和偏低的现象。均方根误差RMSE 中,以PM10 最为显著,其次分别为O3 小时最大和PM2.5,可见这些指标预报浓度均值与对应实测均值之间的差异波动较大;相关系数R 则表明趋势预报最佳的指标为PM2.5,其次为PM10 和SO2。各指标时间序列图和散点图分别如图5 至图11 所示。
从日均值变化趋势上看,NO2 的预报日均值与对应监测值日均值趋势较为符合,但在6~9 月存在预报浓度偏低的现象,从散点图上也可看出NO2 的预报日均值存在偏低现象;SO2 的预报结果中,前半年日均值变化趋势与实测值较为接近,后半年则出现明显偏高的现象,从散点分布上看,部分预报结果高于同期实测值的2 倍;PM10 的预报结果趋势与监测值的趋势较为接近,从散点分布上可以看出,监测值浓度较高的时候预报值存在一定的偏低;PM2.5 的预报结果趋势与实测日均值较为接近,和PM10 一样,在监测值较高的时段存在一定的低报现象。O3 两个指标均存在明显的偏低现象,和实测数据相比,存在明显的偏低现象,且并未呈现夏季较高的现象,这可能和预报系统垂直高度层设置有关,拟在后期降低模式第一层的高度;CO 的预报结果与实测结果的趋势较为一致,但相对而言波动较大,进入秋季以后,预报浓度和实测浓度相比存在一定的偏高现象。
分别统计24 小时和96 小时的直接预报和修正预报,与实测AQI 数据对比,绘制时间序列图,如图12 所示。
分别计算各预报AQI 产品和实测AQI 的平均偏差MB、平均误差MGE、归一化平均偏差NMB 和归一化平均误差NMGE,以及均方根误差RMSE 和相关系数R,结果如表2 所示。
可见,受限于修正预报得出的预报结果为线性修正后的结果,对于高污染天气和优良天气而言,96 小时的修正预报上存在明显的滞后现象,而24 小时修正预报则与实测结果的趋势较为吻合,相关系数R 的结果显示,修正预报技术对24 小时预报趋势的改善效果明显,相关系数达到0.89,而24 小时直接为0.71,同时AQI 预报的平均偏差和平均误差均得到了明显改善,RMSE 的减小也说明修正预报技术降低了24 小时预报AQI 与实际AQI 的差异波动。96 小时预报为目前自修正空气质量预报系统的最长预报时长,直接预报相关系数为0.66,而修正预报技术对96 小时预报的趋势产生了一定的影响,使其相关系数R 下降为0.5,虽然修正预报有助于减小96 小时预报的平均偏差,但同时也增大了其平均误差和均方根误差,导致96 小时修正预报与实际结果间差异波动增大。
3 结论(1)基于Models-3 开发的自修正空气质量预报系统可以在较低硬件投入下实现空气质量的业务化数值预报,该系统可以直观进行模拟参数的配置,具备较高的可系统移植,插件系统在不影响主模块功能的情况下对系统功能进行扩展,具有较高的灵活性。
(2)2014 年,24 小时直接预报等级准确天数为176天,等级和首要污染物均准确的天数为63 天,24 小时修正预报等级准确天数为196 天,等级和首要污染物均准确的天数为121 天,而96 小时直接预报等级准确天数为167 天,等级和首要污染物均准确的天数为58 天,96 小时修正预报等级准确天数为112 天,等级和首要污染物均准确的天数为47 天,可见使用实测数据对24 小时数值预报进行修正后可明显改善其预报效果,但本文所用的修正方法对96 小时预报的预报效果无明显改善效果。
(3)目前采用的预报修正技术存在一定的局限性,下一步工作中应探索模式预报的气象、空气质量数据和相关实测值之间的关系,建立更为科学的预报修正技术。
(4)系统可以在一定程度上把握成都市空气质量变化的节点,但进入冬季后,自修正空气质量预报系统对区域性重污染天气的把握能力有限,可在下一步工作中增大预报范围,引入区域清单,加强区域性污染天气的预报能力。
[1] | 翟世贤, 安兴琴, 刘俊, 等. 不同时刻污染减排对北京市PM2.5浓度的影响[J]. 中国环境科学, 2014, 34(06):1369-1379. |
[2] | Shrestha K L, Konda A, Kaga A, et al. High-resolution modeling and evaluation of ozone air quality of Osaka using MM5-CMAQ system[J]. Journal of environmental sciences, 2009, 21(06):782-789. |
[3] | 刘俊, 安兴琴, 朱彤, 等. 京津冀及周边减排对北京市PM2.5浓度下降评估研究[J]. 中国环境科学, 2014, 34(11):2726-2733. |
[4] | 张艳, 余绮, 伏晴艳, 等. 长江三角洲区域输送对上海市空气质量影响的特征分析[J]. 中国环境科学, 2010, 30(07):914-923. |
[5] | 权建农, 张晓山, 张蔷, 等. 我国燃煤汞沉降的数值模拟[J]. 高原气象, 2009, 28(01):159-164. |
[6] | MAI K, RYOZO O al. A numerical study of summer ozone concentration over the Kanto area of Japan using the MM5/CMAQ model[J]. Journal of environmental sciences, 2011, 23(02):236-246. |
[7] | ZHANG M G, HAN Z W, ZHU L Y. Simulation of atmospheric aerosols in East Asia using modeling system RAMS-CMAQ:model evaluation[J]. China particuology, 2007, 5(05):321-327. |
[8] | JOSE R S, PERE J L, MORANT J L, et al. The use of modern third-generation air quality models (MM5-EMIMO-CMAQ) for real-time operational air quality impact assessment of industrial plants[J]. Water, Air, & Soil Pollution:Focus, 2009, 9(1-2):27-37. |
[9] | Shi C E, Zhang B N. Tropospheric NO2 columns over Northeastern North America:comparison of CMAQ model simulations with GOME satellite measurements[J]. Advances in Atmospheric Sciences, 2008, 25(01):59-71. |
[10] | 陈彬彬, 林长城, 杨凯, 等. 基于CMAQ模式产品的福州市空气质量预报系统[J]. 中国环境科学, 2012, 32(10):1744-1752. |
[11] | 许建明, 徐祥德, 刘煜, 等. CMAQ-MOS区域空气质量统计修正模型预报途径研究[J]. 中国科学D辑:地球科学, 2005,(35)(SI):131-144. |
[12] | Bain M A. An introduction to Gambas[J]. Linux Journal, 2006, 2006(146):1-5. |
[13] | USEPA. Operational Guidance for the Community Multiscale Air Quality (CMAQ) Modeling System.[M/OL]. Chapel Hill, NC:University of North Carolina at Chapel Hill, 2010.[2010-09-11].http://www.cmascenter.org/cmaq/documentation/4.7.1/operational-Guidance-Document.pdf. |
[14] | Python software foundation. SGMLlib Simple SGML parser[EB/OL].[2012-04-21]. https://docs.python.org/2/library/sgmllib.html#module-sgmllib. |
[15] | 王琳琳. 基于HTML Parser的Web信息提取技术[D]. 北京:北京邮电大学, 2007. |
[16] | 姚琳, 叶芝祥, 陆成伟, 等. 成都市空气质量预报中WRF的本地化参数选取[J]. 成都信息工程学院学报, 2012, 27(05):485-489. |
[17] | Team R C. R:A language and environment for statistical computing[M/OL]. Vienna, Austria:2014.[2016-03-10]. https://cram.r-profect.org/doc/manuals/fullrefman.pdf. |
[18] | Michna P. RNetCDF:R Interface to NetCDF Datasets. R package version 1.6. 3-1[EB/OL].[2012-08-02]. http://CRAN.R-project.org/package=RNetCDF. |
[19] | 中国环境监测总站. 环境空气质量指数(AQI)技术规定[EB/OL].[2013-11-13]. www.cnemc.cn/publish/totalWebSite/news/news_38845.html. |
[20] | Carslaw D C, Ropkins K. Openair-an R package for air quality data analysis. Environmental Modelling & Software, 2012, 27-28:52-61. |
[21] | Allaire J J, Cheng J, Xie Y H, et al. Rmarkdown:dynamic Documents for R. 2015.[EB/OL].[2014-06-03]. http://rmarkdewn.rstudio.com/. |
[22] | 李雪白. 配置mutt做邮件客服端[EB/OL].[2011-05-30]. http://home.ustc.edu.cn/-lixuebai/GNU/MuttConfig.html. |
[23] | 谢辉. 基于Linux系统下Apache软件的Web服务器设置[J]. 计算机光盘软件与应用, 2014, (14):78-79. |
[24] | 百度地图. Javascript API大众版[EB/OL].[2014-02-23]. http://bsyun.baidu.com/index.php?title=jspopular. |