POM2K模型运行

操作步骤

  1. 使用PuTTY工具,以root用户登录服务器。
  2. 执行以下命令,进入POM安装目录。

    cd /path/to/POM/POM2K

  3. 执行以下命令解压POM2K安装包。

    unzip POM2K.zip

  4. 执行以下命令进入压缩路径。

    cd POM2K

  5. 执行以下命令修改“pom2k.f”文件。

    1. 打开“pom2k.f”文件。
      vi pom2k.f
    2. 按“i”进入编辑模式,将模式“1”改为模式“3”
      修改前:
      iproblem=1
      修改后:
      iproblem=3
    3. 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。

  6. 执行以下命令拷贝安装包中的头文件“gridcom”

    cp /path/to/POM/GRID-DATA/IC/include/gridcom ./

  7. 执行以下命令修改“runpom2k”文件。

    1. 打开“runpom2k”文件。
      vi runpom2k
    2. 按“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
    3. 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。

  8. 执行以下命令赋予runpom2k权限并运行。

    chmod 755 runpom2k
    ./runpom2k
    显示结果样例如下所示。
    图1 结果样例

    运行完后会在当前目录下生成“fort.71”文件,此文件为所需的nc文件。