POM2K模型运行
操作步骤
- 使用PuTTY工具,以root用户登录服务器。
- 执行以下命令,进入POM安装目录。
cd /path/to/POM/POM2K
- 执行以下命令解压POM2K安装包。
unzip POM2K.zip
- 执行以下命令进入压缩路径。
cd POM2K
- 执行以下命令修改“pom2k.f”文件。
- 打开“pom2k.f”文件。
vi pom2k.f
- 按“i”进入编辑模式,将模式“1”改为模式“3”。
修改前:
iproblem=1
修改后:iproblem=3
- 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
- 打开“pom2k.f”文件。
- 执行以下命令拷贝安装包中的头文件“gridcom”。
cp /path/to/POM/GRID-DATA/IC/include/gridcom ./
- 执行以下命令修改“runpom2k”文件。
- 打开“runpom2k”文件。
vi runpom2k
- 按“i”进入编辑模式,将模式“1”改为模式“3”。
修改前:
# # Runscript for pom2k with example of reading IC from file. # IC file generated by /GRID-DATA/GRID.f (T.E. Dec04) # # Note: if "grid" not created here you can put it in pom2k.c # "params" replaces default values set in pom2k.f # # # ------------------ PARAMETER FILES FOR EACH CASE ----------- # # -- SEAMOUNT TEST CASE (initial cond. calc. in pom2k.f) # echo ' parameter(im=65, jm=49, kb=21)' > grid echo ' iproblem= 1 ' > params echo ' days= 0.025 ' >> params echo ' prtd1= 0.0125 ' >> params echo ' dte= 6. ' >> params # # -- COAST TEST CASE (initial cond. from file) # #echo ' parameter(im=41, jm=61, kb=16)' > grid #echo ' iproblem= 3 ' > params #echo ' days= 0.50 ' >> params #echo ' prtd1= 0.25 ' >> params #echo ' dte= 12. ' >> params #cp IC.dat fort.40 # Initial Condition file # # ------------------ COMPILE & RUN ---------------------------- # # g77 -O3 pom2k.f /usr/local/lib/libnetcdf.a # ---- now netCDF output not used (see "CDF" in pom2k.f) gfortran -O3 pom2k.f # f90 -O3 pom2k.f # or any other compiler you wish to use # # ------------------ OUTPUT FILES ----------------------------- # a.out > pom2k.out # printout file # # pom2k.nc # netCDF file for MATLAB plotting
修改后:# # Runscript for pom2k with example of reading IC from file. # IC file generated by /GRID-DATA/GRID.f (T.E. Dec04) # # Note: if "grid" not created here you can put it in pom2k.c # "params" replaces default values set in pom2k.f # # # ------------------ PARAMETER FILES FOR EACH CASE ----------- # # -- SEAMOUNT TEST CASE (initial cond. calc. in pom2k.f) # # echo ' parameter(im=65, jm=49, kb=21)' > grid # echo ' iproblem= 1 ' > params # echo ' days= 0.025 ' >> params # echo ' prtd1= 0.0125 ' >> params # echo ' dte= 6. ' >> params # # -- COAST TEST CASE (initial cond. from file) # echo ' parameter(im=41, jm=61, kb=16)' > grid echo ' iproblem= 3 ' > params echo ' days= 0.50 ' >> params echo ' prtd1= 0.25 ' >> params echo ' dte= 12. ' >> params cp IC.dat fort.40 # Initial Condition file # # ------------------ COMPILE & RUN ---------------------------- # # g77 -O3 pom2k.f /usr/local/lib/libnetcdf.a # ---- now netCDF output not used (see "CDF" in pom2k.f) gfortran -O3 pom2k.f /path/to/NETCDF/netcdf-4.4.1.1/lib/libnetcdf.a -I/path/to/NETCDF/netcdf-4.4.1.1/include # f90 -O3 pom2k.f # or any other compiler you wish to use # # ------------------ OUTPUT FILES ----------------------------- # ./a.out > pom2k.out # printout file # # pom2k.nc # netCDF file for MATLAB plotting
- 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
- 打开“runpom2k”文件。
- 执行以下命令赋予runpom2k权限并运行。
chmod 755 runpom2k ./runpom2k
显示结果样例如下所示。图1 结果样例运行完后会在当前目录下生成“fort.71”文件,此文件为所需的nc文件。