Inlet算例运行和验证
前提条件
FVCOM需要根据算例编译可执行文件,如果使用inlet算例,则需按照编译和安装流程将“make.inc”文件更换为Intel算例的“make.inc”文件重新编译,并修改“/path/to/FVCOM/FVCOM_source”目录下“mod_cstms_vars.F”、“mod_sed_cstms.F”文件,其余步骤与编译和安装相同。
- 执行以下命令修改“mod_cstms_vars.F”文件。
- 打开“mod_cstms_vars.F”文件。
vi mod_cstms_vars.F
- 按“i”进入编辑模式,修改如下内容。
修改前:
494 (/ "bo_sd50" & 529 (/ "mean grain diameter" & 563 character(len=80), dimension(34) :: bot_units = (" m","kg& 568 character(len=80), dimension(5) :: bed_snames = (/"bed_thick","bed_age","bed_por","bed_diff","bed_btcr"/) 569 character(len=80), dimension(5) :: bed_lnames = (/"bed layer thickness","bed layer age","bed layer porosity","bed layer bio-diffusivity","bed critical stress"/) 570 character(len=80), dimension(5) :: bed_units = (/"m","days","-","-","N/m2"/)
修改后:494 (/character(80):: "bo_sd50" & 529 (/ character(80):: "mean grain diameter" & 563 character(len=80), dimension(34) :: bot_units = (/character(80)::" m","kg& 568 character(len=80), dimension(5) :: bed_snames = (/character(80)::"| (/"bed_thick","bed_age","bed_por","bed_diff","bed_btcr"/) 569 character(len=80), dimension(5) :: bed_lnames = (/character(80)::"bed layer thickness","bed layer age","bed layer porosity","bed layer bio-diffusivity","bed critical stress"/) 570 character(len=80), dimension(5) :: bed_units = (/character(80)::"m","days","-","-","N/m2"/)
- 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
- 打开“mod_cstms_vars.F”文件。
- 执行以下命令修改“mod_sed_cstms.F”文件。
- 打开“mod_sed_cstms.F”文件。
vi mod_sed_cstms.F
- 按“i”进入编辑模式,修改如下内容。
修改后:
5797 IF(BACKWARD_ADVECTION .EQV. .TRUE.)THEN
- 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
- 打开“mod_sed_cstms.F”文件。
操作步骤
- 使用PuTTY工具,以root用户登录服务器。
- 执行以下命令创建并进入测试目录。
mkdir -p /path/to/FVCOM/test cd /path/to/FVCOM/test
- 执行以下命令复制测试算例到当前目录。
cp -r /path/to/FVCOM/FVCOM4.1/Examples/cohesive_bed/tidal_inlet/ ./
- 执行以下命令进入运行目录。
cd ./tidal_inlet/run
- 执行以下命令编辑算例输入文件。
- 打开算例输入文件。
vi inlet_run.nml
- 按“i”进入编辑模式,为“none”、“inlet_nesting.nc”和“inlet_nesting.nc”增加单引号。
NCNEST_NODE_FILES_WAVE = 'none' NESTING_FILE_NAME = 'inlet_nesting.nc' NESTING_FILE_NAME_WAVE = 'inlet_nesting_wave.nc'
- 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
- 打开算例输入文件。
- 执行以下命令运行测试。
time mpirun -np 96 --allow-run-as-root --bind-to core /path/to/FVCOM/FVCOM4.1/FVCOM_source/fvcom --casename=inlet
结果样例如下所示。
父主题: 运行和验证