原文:基于“python+”潮汐、风驱动循环、风暴潮等海洋水动力模拟
前沿
ADCIRC是新一代海洋水动力计算模型,它采用了非结构三角形网格广义波动连续方程的设计,在提高计算精确度的同时还减小了计算时间。被广泛应用于:模拟潮汐和风驱动的循环、预测风暴潮和洪水和近岸海上作业等。
除此之外,ADCIRC也是我国潮汐、风暴潮洪水等科研和业务预报的主流模式。作为水动力模式中的佼佼者,ADCIRC功能齐全,无论是作为业务预报的工具还是科研工具,都是不二的选择。
一,ADCIRC背景与原理
1.1介绍ADCIRC模式的历史背景、优势,以及在海洋中的常用场景。
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软件对模拟结果进行可视化