WaveWatch3学习笔记——模拟实例(2)

2、预处理

mkdir tmp_case_Pacific work_case_Pacific
cd tmp_case_Pacific

# 如果环境变量发生变化,请重新编译
../../bin/w3_clean all
../../bin/w3_new

# 写switch文件
# 参考switch_ser: 
# echo "NC4 F90 NOGRB NOPA LRB4 SHRD PR3 UQ FLX2 LN1 ST2 STAB2 NL1 BT1 DB1 MLIM TR0 BS0 IC0 IS0 REF0 XX0 WNT1 WNX1 CRT1 CRX1 O0 O1 O2 O3 O4 O5 O6 O7 O11 O14" > ../../bin/switch
# 参考switch_mp: 
# echo "NC4 F90 NOGRB NOPA LRB4 MPI DIST PR3 UQ FLX2 LN1 ST2 STAB2 NL1 BT1 DB1 MLIM TR0 BS0 IC0 IS0 REF0 XX0 WNT1 WNX1 CRT1 CRX1 O0 O1 O2 O3 O4 O5 O6 O7 O11 O14" > ../../bin/switch

../../bin/w3_make ww3_grid
../../bin/w3_make ww3_strt
../../bin/w3_make ww3_prep
../../bin/w3_make ww3_multi     # 注意ww3_multi的编译为需要mpi,因此switch文件与其他不同
../../bin/w3_make gx_outf

2.1 网格处理

# 地形网格
cp ../mww3_data_Pacific/ww3_grid.inp.Pacific .
cp ww3_grid.inp.Pacific ww3_grid.inp
cp ../mww3_data_Pacific/Pacific.bot ../mww3_data_Pacific/Pacific.mask ../mww3_data_Pacific/Pacific.obs .

# 处理地形文件
../../exe/ww3_grid > ../work_case_Pacific/ww3_grid.out    # 得到文件mod_def.ww3
mv mod_def.ww3 mod_def.Pacific

# 风场网格
cp ../mww3_data_Pacific/ww3_grid.inp.gwind .
cp ww3_grid.inp.gwind ww3_grid.inp

# 处理地形文件
../../exe/ww3_grid > ../work_case_Pacific/ww3_grid.out    # 得到文件mod_def.ww3
mv mod_def.ww3 mod_def.gwind

2.2 初始条件

cp ../mww3_data_Pacific/ww3_strt.inp .
cp mod_def.Pacific mod_def.ww3 

# 处理初始条件
../../exe/ww3_strt > ../work_case_Pacific/ww3_strt.out    # 得到文件restart.ww3
mv restart.ww3 restart.Pacific

2.3 风场处理

cp ../mww3_data_Pacific/ww3_prep.inp .
cp ../mww3_data_Pacific/wind.raw .
cp mod_def.gwind mod_def.ww3 

# 处理风场文件
../../exe/ww3_prep > ../work_case_Pacific/ww3_prep.out    # 得到文件wind.ww3
mv wind.ww3 wind.gwind

3 运行计算

cp ../mww3_data_Pacific/ww3_multi.inp .
mpirun -np 2 ../../exe/ww3_multi > ../work_case_Pacific/ww3_multi.out

4.1 场输出的后处理(使用gx_outf)

cp ../mww3_data_Pacific/gx_outf.inp .
../../exe/gx_outf > ../work_case_Pacific/gx_outf.out

4.1 场输出的后处理(使用ww3_ounf)

cp ../mww3_data_Pacific/ww3_ounf.inp .
cp mod_def.Pacific mod_def.ww3
../../exe/ww3_ounf > ../work_case_Pacific/ww3_ounf.out
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WaveWatch III (WW3)是一个基于格点的海洋波浪预报模型,用于预测海洋表面波浪的演变。下面是一些关于学习和使用WW3的笔记。 1. 基本原理 WW3基于Navier-Stokes方程组模拟波浪的传播和相互作用。该模型考虑了各种因素,如海洋表面风、海洋流动、海底地形和海水密度等,以模拟海洋表面波浪的演变。 2. 安装和配置 WW3是一个开源软件,可以在其官方网站上免费下载。安装时需要注意一些依赖关系和配置参数,例如需要安装Fortran编译器、NetCDF库等。 3. 输入数据 WW3需要大量的输入数据,包括海洋表面风、海洋流动、海底地形和海水密度等。这些数据可以来自不同的数据源,例如卫星观测、实测数据、数值模拟输出等。 4. 运行模拟 一旦安装和配置完成,就可以使用WW3进行模拟。运行模拟需要提供一些输入参数,如模拟时间、空间分辨率和输出格式等。模拟结果可以保存到文件中,以便后续分析和可视化。 5. 后处理和可视化 WW3生成的模拟结果需要进行后处理和可视化以进行分析。常见的后处理工具包括Python、Matlab和NCL等,可以用来提取和处理模拟结果中的特定变量。可视化工具包括Paraview、VisIt和Gnuplot等,可以用来创建各种类型的图表和动画。 总之,使用WW3进行海洋波浪预报需要掌握一定的数值模拟和后处理技能,同时需要了解海洋波浪的基本原理和输入数据的来源。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值