原文:基于“python+”潮汐、风驱动循环、风暴潮等海洋水动力模拟
前沿
ADCIRC是新一代海洋水动力计算模型,它采用了非结构三角形网格广义波动连续方程的设计,在提高计算精确度的同时还减小了计算时间。被广泛应用于:模拟潮汐和风驱动的循环、预测风暴潮和洪水和近岸海上作业等。
除此之外,ADCIRC也是我国潮汐、风暴潮洪水等科研和业务预报的主流模式。作为水动力模式中的佼佼者,ADCIRC功能齐全,无论是作为业务预报的工具还是科研工具,都是不二的选择。
一:ADCIRC背景与原理
1.1ADCIRC模式的历史背景、优势,以及在海洋中的常用场景。
1.2数值模式的基本理论,ADCIRC动力框架与参数化方案,深层次了解ADCIRC的原理,为ADCIRC应用打下基础。
二:ADCIRC的编译安装
2.1 Linux基础语法教学
(1)虚拟机的安装使用
(2)Linux基础命令
(3)环境变量设置与管理
2.2 ADCIRC编译安装。
(1)依赖基础库安装(GNU编译器、CMAKE、NETCDF、MPICH2等)
(2)ADCIRC模式安装
三:ADCIRC模式前处理
3.1 MATLAB软件安装
3.2网格生成,包括MATLAB和SMS软件两种网格生成方式。
3.3 ADCIRC前处理,包括风场文件、底摩擦文件制作;运行文件的详细解读,并利用基础案例进行ADCIRC运行方法。
3.4控制参数文件,对运行控制参数和各参数化方案。
四:ADCIRC案例分析
4.1利用模型风场进行台风风暴潮模拟
(1)Holland模型风场
(2)实例运行与SMS可视化
(3)风暴潮增水验证
4.2利用ERA5风场进行温带风暴潮模拟
(1)ERA5资料及下载
(2)脚本制作通用风场文件
4.3天文潮模拟
(1)天文潮数据与制作(NAO99与OTPS)
(2)开边界条件设置
(3)计算不稳定、溢出问题分析
4.4 风暴潮漫滩模拟
(1)漫滩网格生成
(2)漫滩案例运行
4.5 ADCIRC运行经验总结
(1)调参注意事项
(2)如何得到一个好的结果
五:Python基础与科学计算
5.1 Python入门和安装
(1)Python背景及其在海洋和气象中的应用
(2)Anaconda解释和安装以及Jupyter配置
(3)Python基础语法
5.2 科学数据处理基础库
(1)Numpy库(科学计算)
(2)Pandas库(数据处理)
(3)Scipy库(统计与插值)
(4)Xarray库(Netcdf格式)
(5)Matplotlib库(可视化)
(6)Cartopy库(地理信息)
基于Anaconda配置Python环境,以及使用Jupyter开发和调试代码。在Python的基础语法上,学习常用的科学计算和可视化库,如Numpy、Pandas、Scipy、Matplotlib等。
六:ADCIRC模式后处理
利用Python对实战案例进行数据处理与绘图,包括潮位站时间序列图,风场,最大风暴增水图等。
(1)绘制站点序列图(Holland与ERA5风场驱动)
(2)绘制天文潮站点模拟结果
(3)绘制过程最大风暴增水分布与台风路径图
(4)绘制每个输出时刻的最大增水并制作动图
(5)SMS软件对模拟结果进行可视化