基于国产操作系统的海湾污染物扩散输运预报系统
——以象山港为例

2022-11-07 08:10朱宇航陈勤思徐一凯胡松
海洋预报 2022年5期
关键词:分潮峡湾水道

朱宇航,陈勤思,徐一凯,胡松

(上海海洋大学海洋科学学院,上海 201306)

1 引言

海湾是我国近岸海域最典型的地理单元之一,具有丰富的滨海旅游、海洋渔业和港口运输等海洋资源[1]。在国家海洋生态文明建设的大背景下,美丽海湾的保护与建设已成为我国“十四五”期间海洋生态环境保护的主线和载体[2]。近年来,随着沿港经济的发展,海湾区域的海岸工程和工业活动日益增加,近海尤其是海湾的水环境受到围填海开发和污染物排放等的破坏,出现了水质下降和生态退化等诸多问题。污染物的扩散和输运预报以及污染物的溯源,是海湾生态与环境保护工作中经常遇到的问题。美丽海湾的景观建成后,需要通过能够快速预报污染物质扩散和输运的预报系统来维持海湾的景观和生态环境。

在近海海洋生态与环境研究中,可以通过现场观测和数值模式的方法对污染物扩散问题进行分析,其中,海洋数值模型可以模拟由潮波[3-5]、环流[6]、风[7]和径流[8]等驱动引起的污染物运动情况。非结构有限体积法海洋模式(Finite-Volume Community Ocean Model,FVCOM)能够很好地拟合复杂地形并保证质量守恒[9],在海湾的研究中取得较好成效[10-11],特别适合中国近海的潮波和潮流模拟。胡松[12]为FVCOM 开发的DYE 示踪物模块,在提供污染物扩散和输运轨迹[13-15]、估算海湾水体交换速率[16-18]以及规划海洋工程和保护近海环境[19-21]等方面具有广阔的应用空间,因此在近岸和区域海洋的生态环境研究中被广泛采用。然而,目前基于海洋模型构建的业务化平台[22-26]多数在CentOS、Red Hat等国外主流操作系统环境下运行,很少有构建在自主操作系统下的海洋模型平台。

2021 年9 月,华为公司正式发布了国产化服务器开源操作系统openEuler,有望成为国产服务器端Linux 的主流[27-28]。openEuler 是以国家数字基础设施为目标建立的操作系统,可以为构建地球模型提供一个可靠、安全、自主的平台。本文率先以openEuler操作系统为平台,编译和构建了非结构水动力海洋模型,并成功运行了象山港海湾污染物扩散输运预报系统。测试结果表明,目前主流的非结构海洋模型可以成功地移植到国产操作系统openEuler上,为后续数字地球提供海洋预报业务化平台。

2 基于openEuler的污染物预报系统

2.1 系统简介

本系统基于最新发布的国产操作系统openEuler,在表1 所示的开发环境下对FVCOM 海洋数值模式进行移植。为提升预报系统的用户体验,系统对污染物的模型设置进行了可视化界面简化。用户可以在交互界面设置污染物示踪的初始参数,包括释放的位置、时间(北京时,下同)和释放量等(见图1),通过并行软件包MPICH 进行多进程并行计算以提高预报计算的时效性。结果以NetCDF 格式输出,可通过Visit 可视化软件实时展示,也可通过系统的Python 程序后处理包将输出结果绘制成发布图。

图1 象山港污染物扩散输运预报系统互动界面Fig.1 GUI of pollutant diffusion and transport prediction system of Xiangshan Bay

表1 预报系统开发环境Tab.1 Developing environment of prediction system

该系统的实现主要有3 个难点:现行openEuler不主动提供桌面环境,需额外安装;openEuler 缺少Visit 安装所需的关键依赖库,需从第三方安装;FVCOM 源代码主要在Intel 编译器下调试,对openEuler自带的开源GNU 编译器兼容性差。本研究修改了FVCOM 源代码,使之能够在GNU编译器下顺利编译,从而成功构建了该系统。

2.2 系统架构及流程

预报系统采用3 层架构设计,均在openEuler系统上进行开发,其设计原理流程见图2。系统分为操作系统层、模型计算层和数据可视化层。各层功能如下:

图2 系统设计原理流程图Fig.2 Flow chart of system design

操作系统层:安装openEuler 系统并进行环境编译配置,使该系统能承载FVCOM 水动力模型并成功运行。

模型计算层:该层为本系统的核心层,能够实现用户交互。在该层中,用户可输入相关信息,该层即会自动输出用户所需的预报数据。

数据可视化层:该层主要为用户提供数据可视化界面,以便用户更加直观地查看系统的模拟结果。

2.3 系统功能

系统主要功能如下:

(1)用户可以凭借实际情况或实验情况,自定义输入示踪物的释放位置、释放时间和释放量。

(2)系统自动在线计算并生成潮汐数据、潮流数据和示踪物扩散数据,用户可以直接根据计算输出的NetCDF 格式文件进行研究区域内潮汐、潮流及示踪物扩散相关的研究。例如,示踪物轨迹可用于评估潮流驱动下污染物的扩散和输运情况,也可用于评估海湾水体交换率。

(3)本系统提供实时Visit可视化和Python 自动脚本绘制图像的可视化结果,将这两套预报数据作为成果进行展示,用户可以选取合适的可视化途径,以获取示踪物扩散信息。

2.4 操作系统层

操作系统层基于国产操作系统openEuler建立。openEuler 是继华为“鸿蒙”系统之后的又一全新国产自主开发的操作系统,它的诞生体现了我国操作系统自主研发能力的增强。openEuler 作为高效且稳定的开源操作系统,支持多设备操作,应用一次开发覆盖全场景,其内核源于Linux,支持鲲鹏和其他多种处理器。openEuler 在编译系统网络和文件系统等方面进行了改进与优化,是性能卓越的操作系统平台,可以满足高负载的客户业务需求,也适用于数据库和人工智能等先进的应用场景;同时,openEuler面向全球的操作系统开源社区,鼓励社区合作,这可以使得openEuler 一直走在时代的前沿,很好地满足我们构建业务化海洋模型的需要[16]。

2.5 模型计算层

模型计算层主要基于FVCOM 动力模块和DYE 模块建立[11]。FVCOM 海洋模式中的示踪物DYE 方程与水温方程相似,最初为HU 等[29]为了研究乔治浅滩的营养盐输运而研发,随后在世界各地的海湾研究中得到广泛应用。方程如下:

式中:N为污染物浓度;μ、v和w分别为笛卡尔坐标下的x、y和z方向流速;Az为垂向湍流混合系数,Ah为水平湍流混合系数,两个系数分别由Mellor-Yamada 2.5 模型[30-31]和 SMAGORINSKY 方案[32]确定。污染物扩散输运预报系统中的标准化释放量即为污染物浓度N,水平扩散系数即为水平湍流混合系数Ah。

式中:Ω 是单个示踪控制元的面积;C是恒定参数;Pr是普朗克常量。

2.6 数据可视化层

本系统中的数据可视化层主要是集成Visit 和Python 工具进行潮位数据、潮流数据及污染物扩散结果的可视化展示。Visit 可实时读取NetCDF 格式的模式输出结果,以自带的可视化界面进行展示。Python 后处理包可以自动化批量绘制潮位、潮流和示踪物扩散包络线等平面分布图。

3 美丽海湾污染物预报系统测试及初步验证——以象山港为例

3.1 模型网格设置

预报系统以象山港区域为案例进行了网格设置和运行。象山港地处浙江沿海中部,宁波市东南部,经纬度范围为 29.38°~29.77°N,121.41°~122.00°E。象山港是一个狭长的半封闭型海湾,整体呈东北—西南走向,主要包括与外海相连的佛渡水道、牛鼻水道以及主体部分的象山港峡湾。海湾全长约70 km,多数水深在10~15 m,常年波浪较小,适合避风避浪。

象山港岸线蜿蜒曲折,峡湾内分布有许多大小不一的岛屿。为了较准确地模拟象山港潮水运动,本文在佛渡水道及牛鼻水道分别设置了两条水道的开边界。计算模型采用三角形网格(见图3),由于在地形变化剧烈的地区海水运动较为复杂,本文在岛屿和岸边界等地形复杂区域进行了岸线加密。计算区域共分成18 391个节点,35 081个三角元,最小网格精度在100 m以内,垂向σ坐标分11层。

图3 象山港网格Fig.3 Model grid in Xiangshan Bay

3.2 模型参数设置

模型采用高精度岸线数据和水深数据,由潮波驱动。

(1)岸线和水深数据

本系统以象山港为例。为较好地模拟象山港水动力的真实情况,系统利用遥感数据,通过Canny算子提取了较为精准的象山港岸线,同时利用电子海图通过MapInfo数值化软件将象山港区域的水深数据进行数字化。通过SMS 软件将水深数据插值到象山港网格并得到水深图(见图4)。象山港水深在佛渡水道较大,约为25 m,在象山港峡湾口门处减少为10 m 左右,进入峡湾后,水深增加,在峡湾中段达到25~30 m,临近湾顶处衰减为5~10 m。总体水深分布呈现湾顶和口门地区较小、峡湾中段较大的特点,其中3个支港(黄墩港、铁港和西沪港)内水深较小,约为0~5 m,峡湾中段有一较深点,水深超过45 m。

图4 象山港插值水深Fig.4 Model bathmetry in Xiangshan Bay

(2)开边界潮波设置

模型的外海潮波开边界通过给出8个主要天文分潮(M2、S2、K1、O1、N2、K2、P1和 Q1)的调和常数计算的水位进行驱动。水位计算公式为:

式中:h(t)为任何时刻的潮水高度;h0为余水位(这里设为 0);fi为交点因子;Hi为振幅;ai为角频率;ui为交点订正角;v0i+ui表示初相角;gi为迟角。

模型使用的调和常数,即Hi和gi的数值来源于基于DTU10模式下的全球潮汐调和常数资料,由丹麦科技大学(Technical University of Denmark)研发,分辨率为0.125°×0.125°。

3.3 模型验证

象山港海水运动主要受到潮波引起的潮流影响,其物质扩散和输运过程也主要由潮流驱动,因此,本研究初步验证了预报系统的潮位预报准确度。图5为西泽站点(位置见图3,29°36′34.53″N ,121°49′56.91″E)的预报潮位及潮流与实测资料的对比,实测资料来自朱军政等[33]2002 年8 月16 日0:00—8 月 30 日 23:00 的实测数据。如图 5 所示,预报系统基本上拟合了西泽站点的水位及潮流变化。本文根据SPITZ 等[34]的方法,使用相对平均误差和相关系数来进行误差评估,得到潮位的相对平均误差为2.13%,潮流的相对平均误差为5.42%,相关系数接近1。

图5 预报潮位及潮流和实测资料对比Fig.5 Comparison of forecast tide levels and currents with measured data

3.4 潮位和潮流结果分析

本文对潮位的模拟结果进行潮汐调和分析,得到象山港M2分潮的同潮图(见图6)。象山港是典型的半日潮港,其中,M2分潮在潮位中占主导地位,浅水分潮也十分明显[35]。象山港内M2分潮的振幅均在1 m以上,佛渡水道和牛鼻水道的振幅约为1.1 m。在峡湾内,随着峡湾的深入,振幅由口门处的1.1 m不断递增,当分潮传入黄墩港和铁港后,振幅达到1.4 m,口门处M2分潮的迟角与峡湾中段相差10°左右。

图6 象山港M2分潮同潮图Fig.6 M2 Co-tidal chart in Xiangshan Bay

图7 为模拟结果的象山港M2分潮表层潮流椭圆图,椭圆的长半轴和短半轴分别代表该点分潮的最大流速和最小流速。M2分潮潮流椭圆长轴在牛鼻水道—狭湾口门之间较大,椭圆率介于0.2~0.4,且均为顺时针旋转,呈旋转流特征。进入峡湾后,由于水道变窄,M2分潮潮流逐渐减弱,椭圆率骤减至0~0.1,并且顺时针流与逆时针流交替出现,呈往复流特征。狭湾口门—湾顶的椭圆长轴不断减小,在黄墩港和铁港附近达到最小,这与前人的研究结论[33-36]基本一致。

图7 象山港M2分潮表层潮流椭圆图Fig.7 M2 tidal current ellipse in Xiangshan Bay

以 X1(121.9°E,29.7°N)为基准站,图 8a—d 展示了大潮期间(2021 年 6 月 12 日 0—24 时)表层落急、落憩、涨急和涨憩4 个典型时刻的流场(表层—底层流场特征类似,仅流速逐渐变小)。除铁港、黄墩港和西沪港外,象山港内潮流普遍很强,且潮流流向与岸线方向基本一致。牛鼻水道及佛渡水道的潮流比峡湾内潮流强,其中,牛鼻水道附近的流速为全港最大值。以峡湾内潮流来看,随着峡湾的深入,流速从口门处开始逐渐减小,在湾顶处达到最小。由落急和涨急时刻的流速可以看出,涨潮流速大于落潮流速。涨潮时,外海潮流经牛鼻山水道和佛渡水道汇集在象山港峡湾口门后,沿岸线向湾内传播,在峡湾中段到达西沪港港口处时有一支分潮流流入港内;经过西沪港口后,由于峡湾中段岛屿众多,潮流被分流成多路且流速有所增加;经过众多岛屿后,潮流汇集成一股,并在临近湾顶附近分成两支,分别进入黄墩港和铁港。落潮时,黄墩港、铁港和西沪港的分潮流汇入峡湾后,在峡湾口门处流速达到最大值,随后通过牛鼻山水道和佛渡水道退出象山港并进入外海。

图8 象山港潮流模拟结果Fig.8 Modelled tidal currents in Xiangshan Bay

3.5 污染物扩散分析

选取图8 中象山港口门处的基准站点X1 连续释放污染物进行扩散模拟计算,起始时间设置为2021 年6 月1 日,标准化扩散量和扩散系数为默认设置。两个完整的潮周期期间污染物浓度的分布如图 9 所示。根据计算结果,设置 X2(121.85°E,29.65°N)和X3(121.95°E,29.65°N)两个基准站点,两个完整潮周期期间的污染物浓度随时间变化特征如图10所示。

图9 污染物扩散输运案例图Fig.9 Examples of pollutant diffusion and transport

图10 污染物浓度随时间变化图Fig.10 Graph of the change of pollutant concentration with time

由图9 可知,整个过程中污染物被强烈的潮流驱动。涨潮时,污染物沿岸线向湾顶移动,污染物浓度由中心向四周衰减扩散,由于水道变窄,污染物扩散范围被压缩。落潮时,污染物随水流向峡湾外运动,随着时间的推移,污染物在岸线周边沿牛鼻水道向外海推移。由于污染物的影响水域与外界干净的海水会不断地进行水体交换,污染物水团由外向内被稀释。由图10 可知,X2 位于象山港峡湾内,受涨落潮的影响,污染物浓度变化较为剧烈,而X3 位于牛鼻水道附近,水域相对宽广,污染物浓度变化相比于峡湾内更平稳。

本文选取图8 中象山港口门处的基准站点X1连续释放污染物来测试系统的稳定性,起止时间设置为 2021 年 1 月 1 日—12 月 30 日,按月输出计算结果,其余为默认设置。各月月末的最后1 h 污染物的扩散分布如图11所示。由图可见,海湾污染物扩散输运预报系统能正常运行且稳定可靠,可以较好地展示污染物在输运过程中的扩散过程,并给出特定时刻的污染物浓度和包络线,为污染物的评估和预防提供参考。

图11 系统稳定性测试结果图Fig.11 System stability test results

4 结论和展望

本文基于国产操作系统openEuler 构建了一个基于FVCOM 的海湾污染物扩散输运预报系统,并以象山港为例对整个系统进行测试和检验。结论与展望如下:

(1)openEuler 作为华为自主研发的新系统,具有广阔的应用潜力和前景。

(2)本文首次成功将基于FVCOM 的污染物预报系统及其附带的可视化后处理系统移植到国产操作系统openEuler 中,并以象山港为例进行了测试。这套方法及其成功经验可以推广应用到其他海湾。

(3)未来研究可以考虑将大气海洋耦合模式以及生态和水质耦合模式移植到openEuler系统,应用于美丽海湾的生态环境保护。

猜你喜欢
分潮峡湾水道
新西兰Taranaki盆地第四系深水水道迁移规律与沉积模式
大亚湾双峰水位的形成条件及准调和分量应用的分析
山东邻海长周期分潮对深度基准面的影响分析
挪威峡湾寻石记
峡湾——特殊形式的槽谷
奇怪的封闭水道
挪威——吕瑟峡湾
大亚湾海域潮位“双峰”现象生成机制研究❋
峡湾小镇
凿通运河,江南水道相钩连